各位老兄,我初学。请问如何编写多线程应用程序?我做了一个下载的小程序,现在想把它改成多线程的。其中第一部分功能为:输入一个网址,然后进行一些判断操作。
照着书上的一个简单例子,我把程序做了如下改动,但执行该功能时,程序报错,提示这个.exe文件的一些信息,不知何故?type
TPainterThread = class(TThread)
protected
procedure Execute; override;
end;procedure TPainterThread.Execute;
begin
//该功能的代码部分......
end;procedure TDownLoadForm.OKBtnClick(Sender: TObject);
var
pt: TPainterThread;
begin
pt:=TPainterThread.Create(false);
end;如果是编译执行时,点下OK按钮后,程序就出现前面所说的错误,如果是在文件夹里直接运行这个exe文件,点下OK按钮后,程序无任何反应,也不报错。
为什么程序不执行我其中的代码呢?
但我试了如果把执行代码部分换一下,比如改成一句showmessage('ok');这样点击OK按钮后,可以弹出该对话框来,证明这结构应该是对的啊。但是我那些代码也应该是对的,且它也不提示哪一句有错,我也不知怎样修改。
像这种情况应该从哪些方面考虑呢?(能否提供一些多线程的源代码给我看看)谢谢!
照着书上的一个简单例子,我把程序做了如下改动,但执行该功能时,程序报错,提示这个.exe文件的一些信息,不知何故?type
TPainterThread = class(TThread)
protected
procedure Execute; override;
end;procedure TPainterThread.Execute;
begin
//该功能的代码部分......
end;procedure TDownLoadForm.OKBtnClick(Sender: TObject);
var
pt: TPainterThread;
begin
pt:=TPainterThread.Create(false);
end;如果是编译执行时,点下OK按钮后,程序就出现前面所说的错误,如果是在文件夹里直接运行这个exe文件,点下OK按钮后,程序无任何反应,也不报错。
为什么程序不执行我其中的代码呢?
但我试了如果把执行代码部分换一下,比如改成一句showmessage('ok');这样点击OK按钮后,可以弹出该对话框来,证明这结构应该是对的啊。但是我那些代码也应该是对的,且它也不提示哪一句有错,我也不知怎样修改。
像这种情况应该从哪些方面考虑呢?(能否提供一些多线程的源代码给我看看)谢谢!
解决方案 »
- **********这样用delphi,会有什么问题么?
- 在线等.
- 100分求一个成品布优化开剪算法
- image控件增加鼠标移进和移出事件,除了建立一个Class外还有其它好办法吗?
- 各位~小弟刚学delphi想做个3层结构的数据库应用程序~~高分求助~
- 想学习汉化,但是不知从那里入手,大家交流一下好吗?
- 谁能用Delphi屏蔽Win2000的Alt+Ctrl+Del!分数任你要!!!(UP有分)
- 怎么屏蔽状态任务栏的右键弹出菜单(最大化,最小化,还原及关闭)? 3x
- 那位会排列组合???
- 各位大侠,哪里有读写注册表的控件,能返回Default Value(适合Delphi5版本)?
- 有关于数据库控件的问题
- 编写的Active x一旦运行就无法在编译,怎么办
是不是这样啊?
pt: TPainterThread;
最好把你的代码贴出来看看。