zoukankan      html  css  js  c++  java
  • C# 等待窗体

    你可以使用异步显示一个等待窗体,参考代码如下:

    public   partial   class   Form1   :   Form 

    public   Form1() 

    InitializeComponent(); 

    //运行时间较长的函数的委托定义 
    private   delegate   object   someMethodDelegate(object   someArg); 

    //运行时间较长的函数 
    private   object   someLongtimeMethod(object   someArg) 

    //执行较长的操作 
    return   someArg; 

    private   void   button1_Click(object   sender,   EventArgs   e) 

    //为调用函数而声明委托的实例 
    someMethodDelegate   sd   =   new   someMethodDelegate(this.someLongtimeMethod); 
    //开始调用函数,可以带参数 
    IAsyncResult   ir   =   sd.BeginInvoke( "测试参数 ",   null,   null); 
    //显示等待的窗口 
    Form   fWait   =   new   Form(); 
    fWait.StartPosition   
    =   FormStartPosition.Manual; 
    fWait.Location   
    =   this.button1.Location; 
    fWait.Show(
    this); 
    //刷新这个等待的窗口 
    Application.DoEvents(); 
    //循环检测是否完成了异步的操作 
    while   (true

    if   (ir.IsCompleted) 

    //完成了操作则关闭窗口 
    fWait.Close(); 
    break


    //取函数的返回值 
    object   retValue   =   sd.EndInvoke(ir); 
    System.Console.WriteLine(retValue); 



    二,这种方式要简便得多

    Frm_flash f = new Frm_flash("正在检查更新程序请等待!!!");
    f.Show();
    Application.DoEvents();
    obj_BL_MainForm.ValidateSystem();
    //做更新操作
    f.Close(); 
  • 相关阅读:
    arm64 boot
    python学习笔记
    字符编码问题详解
    Restful 架构设计
    调度器学习总结
    从0开始学习maven搭建spring+mybatis框架
    java内存管理
    linux 基础
    自学有感
    echart 图表显示技术
  • 原文地址:https://www.cnblogs.com/xvqm00/p/1502020.html
Copyright © 2011-2022 走看看