进度条问题(因数据量巨大,所以速度比较慢,为了防止过多占用CPU使用率,我做了个假进度条,只让显示个模式对话框窗体,窗体载入个*.gif的图片)

chaozi_249 2009-06-23 03:58:54
因数据量巨大,所以速度比较慢,为了防止过多占用CPU使用率,我做了个假进度条,只让显示个模式对话框窗体,窗体载入个*.gif的图片,当点击按钮的时候 开辟了个线程 这个线程就载入显示这个窗体的方法,多次点击按钮的时候会弹出这个错误,但是一直不在知道这个错误是哪里报出来的,很纳闷,所以发个帖子,问下大哥大姐姐们。不能发图片。我弄个假的吧。
Microsoft.NET Framework X
应用程序中发生了无法处理的异常。如果单击"继续",应用程序将
这里是个 忽略此错误并尝试继续。如果单击"退出",应用程序将立即关闭。
警告图标
正在中止线程。。


详细信息(D) 继续 退出



下面是详细信息:
有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.Threading.ThreadAbortException: 正在中止线程。
在 System.Windows.Forms.UnsafeNativeMethods.IntEndPaint(HandleRef hWnd, PAINTSTRUCT& lpPaint)
在 System.Windows.Forms.UnsafeNativeMethods.EndPaint(HandleRef hWnd, PAINTSTRUCT& lpPaint)
在 System.Windows.Forms.Control.WmPaint(Message& m)
在 System.Windows.Forms.Control.WndProc(Message& m)
在 System.Windows.Forms.Label.WndProc(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 已加载的程序集 **************
mscorlib
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
jamonitor
程序集版本: 1.0.0.0
Win32 版本: 1.0.0.0
基本代码: file:///I:/kj232软件/soft/090608softAndsql/soft/bin/Debug/jamonitor.exe
----------------------------------------
System
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Windows.Forms
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.214 (QFE.050727-2100)
基本代码: file:///C:/windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Data
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Transactions
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_32/System.Transactions/2.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.EnterpriseServices
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_32/System.EnterpriseServices/2.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll
----------------------------------------
System.Windows.Forms.resources
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/windows/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_zh-CHS_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
mscorlib.resources
程序集版本: 2.0.0.0
Win32 版本: 2.0.50727.42 (RTM.050727-4200)
基本代码: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------

************** JIT 调试 **************
要启用实时(JIT)调试,
该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置
jitDebugging 值。
编译应用程序时还必须启用
调试。

例如:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

启用 JIT 调试后,任何无法处理的异常
都将被发送到在此计算机上注册的 JIT 调试器,
而不是由此对话框处理。


...全文
228 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wisejohn 2009-06-23
  • 打赏
  • 举报
回复
MARK
我现在也打算要这样的一个设计,我的是一个函数For循环去读,数据多了为卡得死,想用线程,不过想想,我最终还是得写到窗体上,用for会不会还是卡死呢?
iris1121 2009-06-23
  • 打赏
  • 举报
回复
线程问题。。。
阿牛138588 2009-06-23
  • 打赏
  • 举报
回复
窗体已释放,而你还想干活,就出错了

释放先后顺序理一下
Error_Code 2009-06-23
  • 打赏
  • 举报
回复
LZ你用后台线程弹模式对话框肯定会出问题的
应该是用主线程弹模式窗口,在弹出的窗口里开线程
binhu12332100 2009-06-23
  • 打赏
  • 举报
回复
来学习的……
北京的雾霾天 2009-06-23
  • 打赏
  • 举报
回复
你可以参考下下面的代码:

private void button1_Click(object sender, EventArgs e)
{
Thread th = new Thread(aa);
th.Start();
}
delegate void somedle();
private void aa()
{
if (this.InvokeRequired)
{
somedle sd = new somedle(aa);
this.Invoke(sd);
return;
}
ShowChar('A');
}
public void ShowChar(char ch)
{
lock (this)
{
textBox1.Text += ch;
}
}
北京的雾霾天 2009-06-23
  • 打赏
  • 举报
回复
可能是因为多线程访问界面控件造成的问题,你可以使用委托来试试看。
from911cs 2009-06-23
  • 打赏
  • 举报
回复
是不图片太大了?
设置一下图片大小:
pictureBox1.ImageLocation = "http://csdnimg.cn/bbs/t/5/i/pic_logo.gif";
pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧