我在主窗体里多线程调用了进度条窗体 public Frm_PicDetail()
{ Thread t = new Thread(new ThreadStart(DoSomeWork));
t.IsBackground = true;
t.Start(); DrawMenu();//生成菜单DrawMenu是个生成菜单的程序里面有几万个循环
每次编译的时候都显示在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。
语句是指象 Invoke(new UpdateUIDelegate(UpdateUI), new object[] { true }); private void DoSomeWork()
{
// This is time consuming operation - loading data, etc.
System.Threading.Thread.Sleep(2000); // Update UI
Invoke(new UpdateUIDelegate(UpdateUI), new object[] { true });
}任何我试了把
DrawMenu();//生成菜单
放到线程前面或则去掉DrawMenu();//生成菜单
都是正常运行的 public Frm_PicDetail()
{
DrawMenu();//生成菜单
Thread t = new Thread(new ThreadStart(DoSomeWork));
t.IsBackground = true;
t.Start();
是不是因为DrawMenu();//生成菜单
太占程序资源的原因??
什么办法可以解决啊
{ Thread t = new Thread(new ThreadStart(DoSomeWork));
t.IsBackground = true;
t.Start(); DrawMenu();//生成菜单DrawMenu是个生成菜单的程序里面有几万个循环
每次编译的时候都显示在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。
语句是指象 Invoke(new UpdateUIDelegate(UpdateUI), new object[] { true }); private void DoSomeWork()
{
// This is time consuming operation - loading data, etc.
System.Threading.Thread.Sleep(2000); // Update UI
Invoke(new UpdateUIDelegate(UpdateUI), new object[] { true });
}任何我试了把
DrawMenu();//生成菜单
放到线程前面或则去掉DrawMenu();//生成菜单
都是正常运行的 public Frm_PicDetail()
{
DrawMenu();//生成菜单
Thread t = new Thread(new ThreadStart(DoSomeWork));
t.IsBackground = true;
t.Start();
是不是因为DrawMenu();//生成菜单
太占程序资源的原因??
什么办法可以解决啊
解决方案 »
- 求助关于在三层结构中,用SqlDataAdapter调用存储过程填充combobox的问题!
- socket异步通讯传输数据?
- 带参数的线程该怎么写?
- 有只讲Windows窗体应用程序和SQL操作的书吗
- 怎样写购物车?
- 从数据库中导出大量的数据,做一个导出进度条,该怎么做呀?
- WPF中的DataGrid问题
- 用C#制作一个在网域网中实现一对一视频,一对多语音聊天
- [Help]求VLC media player的源代码。。。
- 关于安装程序的问题.互相帮助,共享第一啊.
- 谁有C# 操作WORD 域的例子啊
- 试图运行项目时出错:未能加载文件或程序集"winio.dll"或它的某一个依赖项。该模块应包含一个程序集清单
if (!this.IsDisposed)//注意:要判断窗体是否已销毁,否则会出现,异常提示:“在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke”
{
this.Invoke(e, new object[] { });
}