zoukankan      html  css  js  c++  java
  • BackGroundWorker控件的使用注意

    该控件有三个事件:
    DoWork 、ProgressChanged 和 RunWorkerCompleted
    在程序中调用RunWorkerAsync方法则会启动DoWork事件的事件处理,当在事件处理过程中,调用 ReportProgress方法则会启动ProgressChanged事件的事件处理,而当DoWork事件处理完成时,则会触发RunWorkerCompleted事件。
    您必须非常小心,确保在 DoWork 事件处理程序中不操作任何用户界面对象。而应该通过 ProgressChanged和 RunWorkerCompleted 事件与用户界面进行通信。

    ProgressChanged事件

    在DoWork事件的处理过程中,如果调用ReportProgress则会发生该事件。
    void backgroundWorker1_ProgressChanged( Object^ sender, ProgressChangedEventArgs^ e )
    先来说说ReportProgress的两种重载:
    void ReportProgress(int percentProgress)
    void ReportProgress(int percentProgress,Object^ userState)
    ProgressChanged事件处理程序的第二个参数e有一个ProgressPercentage属性,它就由ReportProgress的第一个参数percentProgress来提供。这个参数一般用来报告该后台操作完成的进度,然后用ProgressChanged的第二个参数e的ProgressPercentage属性来获取该进度信息。如果用户还想传递更多的信息,可以使用ReportProgress的第二种重载,它的第二个参数userState将会传递给ProgressChanged事件的参数e的UserState属性。
  • 相关阅读:
    点分治 (等级排) codeforces 321C
    树上点分治 poj 1741
    判断点在直线的左侧还是右侧
    树的重心
    链式前向星
    树上点的分治
    构造 素数
    二进制 + 模拟
    枚举 + 三分 (游标)
    枚举 + 三分
  • 原文地址:https://www.cnblogs.com/zhayunjia/p/4042435.html
Copyright © 2011-2022 走看看