zoukankan      html  css  js  c++  java
  • c# Winform UI异步委托

     1 public class UISync
     2     {
     3         private static ISynchronizeInvoke Sync;
     4 
     5         public static void Init(ISynchronizeInvoke sync)
     6         {
     7             Sync = sync;
     8         }
     9 
    10         public static void Execute(Action action)
    11         {
    12             Sync.BeginInvoke(action, null);
    13         }
    14     }
    15 
    16     public partial class Form1 : Form
    17     {
    18         TrackBar trackBar1 = new TrackBar();
    19         Label lblTime = new Label();
    20         Label lblDuration = new Label();
    21 
    22         public Form1()
    23         {
    24             UISync.Init(this);
    25         }
    26 
    27         void Events_PlayerStopped(object sender, EventArgs e)
    28         {
    29             UISync.Execute(() => InitControls());
    30         }
    31 
    32         void Events_MediaEnded(object sender, EventArgs e)
    33         {
    34             UISync.Execute(() => InitControls());
    35         }
    36 
    37         private void InitControls()
    38         {
    39             trackBar1.Value = 0;
    40             lblTime.Text = "00:00:00";
    41             lblDuration.Text = "00:00:00";
    42         }
    43 
    44         void Events_TimeChanged(object sender, EventArgs e)
    45         {
    46             UISync.Execute(() => lblTime.Text = TimeSpan.FromMilliseconds(DateTime.Now.Millisecond).ToString().Substring(0, 8));
    47         }
    48 
    49         void Events_PlayerPositionChanged(object sender, EventArgs e)
    50         {
    51             UISync.Execute(() => trackBar1.Value = (int)(88 * 100));
    52         }
    53 
    54 
    55         void Events_DurationChanged(object sender, EventArgs e)
    56         {
    57             UISync.Execute(() => lblDuration.Text = TimeSpan.FromMilliseconds(DateTime.Now.Millisecond).ToString().Substring(0, 8));
    58         }
    59     }
  • 相关阅读:
    运算符
    数据类型
    试题汇总
    文件读写
    Python操作
    字符串常用函数 void
    向量叉乘求任意多边形面积,凹凸均可 void
    约瑟夫问题各种求解办法 void
    大数类相关计算(c语言版) void
    求解一元多次方程(迭代法) void
  • 原文地址:https://www.cnblogs.com/94cool/p/2946304.html
Copyright © 2011-2022 走看看