winform 如何显示正在加载 RT,如果碰到窗体加载慢的时候显示正在加载,加载完后显示窗体。如果窗体加载快就不显示,直接显示窗体,网上查找资料,似乎可以用多线程的方式,请指教,最好给个例子学习下,谢谢各位!(注:有没有可能实现类似reportview控件的那种加载的显示方式) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个只能根据测试来手动添加功能吧 可以使用backgroundworker控件来试试 谢谢LS,backgroundworker,我没用过,我试试去 可以使用backgroundworker,网上下载个正在加载的图片,把他放到panel上,让它在DOWORK上变换就好了 private void BackWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { PicBox.Visible = false; tlp1.Visible = true; } private void BackWorker_DoWork(object sender, DoWorkEventArgs e) { //要执行的动作 } private void button1_Click(object sender,EventArgs e) { BackWorker.RunWorkerAsync(); } static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Main.WaitForm sp = new Main.WaitForm(); //启动窗体---为等待窗口,显示正在加载窗体。、 context = new ApplicationContext(); context.Tag = sp; Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException); Application.Idle += new EventHandler(Application_Idle); //程序运行空闲去执行主程序窗体相应初始化代码 sp.Show(); //显示启动窗体 Application.Run(context); } private static void Application_Idle(object sender, EventArgs e) { Application.Idle -= new EventHandler(Application_Idle); Start(); } private static void Start() { if (context.MainForm == null) { //启动主程序窗体 Main.MainDesktop mw = Main.MainDesktop(); context.MainForm = mw; mw.Initialization_All(); mw.Show(); //如果加载完毕,则关闭启动窗体 Main.WaitForm sp = context.Tag as Main.WaitForm; if (sp != null) { sp.Close(); } } }测试可用 [求助]关于linq查询语句的一个问题 关于KeyDown 事件问题 如何在windows窗体中实现类似SQL server 企业管理器风格的界面? C#数据绑定问题 有人知道如何在msn messenger plugin里面得到对方的ip地址么? 请问各位高手,不用new怎么改变Label的坐标? 如何远程连接MYSQL数据库???? 数据集返回问题 DropDownList控件邦定問題。 socket 编程的简单问题. *********字符串高度计算******** WPF下能不能在控件里打开一个新程序?
可以使用backgroundworker控件来试试
{
PicBox.Visible = false;
tlp1.Visible = true;
} private void BackWorker_DoWork(object sender, DoWorkEventArgs e)
{
//要执行的动作
}
private void button1_Click(object sender,EventArgs e)
{
BackWorker.RunWorkerAsync();
}
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Main.WaitForm sp = new Main.WaitForm(); //启动窗体---为等待窗口,显示正在加载窗体。、
context = new ApplicationContext();
context.Tag = sp;
Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
Application.Idle += new EventHandler(Application_Idle); //程序运行空闲去执行主程序窗体相应初始化代码
sp.Show(); //显示启动窗体
Application.Run(context);
}
private static void Application_Idle(object sender, EventArgs e)
{
Application.Idle -= new EventHandler(Application_Idle);
Start();
} private static void Start()
{
if (context.MainForm == null)
{
//启动主程序窗体
Main.MainDesktop mw = Main.MainDesktop();
context.MainForm = mw;
mw.Initialization_All();
mw.Show(); //如果加载完毕,则关闭启动窗体
Main.WaitForm sp = context.Tag as Main.WaitForm;
if (sp != null)
{
sp.Close();
}
}
}测试可用