关于线程中传递参数碰到问题
各位好,最近在学习Delphi时,想线程练手程序,碰到以下问题:
思路: 点击Form上的Button,线程开始执行;线程在运行过程中,让Form上的Label不断更新。
线程类:
TMyThread = class(TThread)
public
constructor Create(var lable:TLabel);
protected
procedure Execute;override;
private
ShowHint : TLabel;
Terminate : Boolean;
constructor TMyThread.Create(var lable:TLabel);
begin
ShowHint := lable; //此处抛出异常
Terminate := True;
end;
……
然后再Button点击事件里,启动线程
procedure TForm1.btn1Click(Sender: TObject);
begin
ThreadRun.Create(lbl1); //创建、启动线程
end;
……
在Delphi里面,TLabel对象作为参数传递给线程,然后在线程里面再使用,这样可行吗?
[解决办法]
1. create最后应当加上:
inherited Create(False);
2.