//线程, 为什么我这样做的多线程,文本框中的数字不会连续跳动?
lvThread=class(TThread)
private
fTxt:TEdit;
protected
procedure Execute;override;
public
constructor Create(txt:TEdit);virtual;
end;
var
Form1: TForm1;implementation{$R *.dfm}
constructor lvThread.Create(txt:TEdit);
begin
fTxt:=txt;
FreeOnTerminate:=true;
inherited Create(false);
end;procedure lvThread.Execute;
var i:integer;
begin
for i:=1 to 100000 do
fTxt.Text :=inttostr(i);
end;procedure TForm1.Button1Click(Sender: TObject);
var t1,t2:lvThread;
begin
t1:=lvThread.Create(edit1);
t2:=lvThread.Create(edit2);
t1.Execute ;
t2.Execute ;
end;为什么我这样做的多线程,文本框中的数字不会连续跳动?
lvThread=class(TThread)
private
fTxt:TEdit;
protected
procedure Execute;override;
public
constructor Create(txt:TEdit);virtual;
end;
var
Form1: TForm1;implementation{$R *.dfm}
constructor lvThread.Create(txt:TEdit);
begin
fTxt:=txt;
FreeOnTerminate:=true;
inherited Create(false);
end;procedure lvThread.Execute;
var i:integer;
begin
for i:=1 to 100000 do
fTxt.Text :=inttostr(i);
end;procedure TForm1.Button1Click(Sender: TObject);
var t1,t2:lvThread;
begin
t1:=lvThread.Create(edit1);
t2:=lvThread.Create(edit2);
t1.Execute ;
t2.Execute ;
end;为什么我这样做的多线程,文本框中的数字不会连续跳动?
解决方案 »
- 如何知道TIdTcpServer与TidTcpClient断开连接?
- 我调用DllRegisterServer对进程内COM组件注册提示找不到函数名,但是用regsvr32.exe命令可以正常注册,真奇怪!帮我!
- DLL动态调用!
- ado连接释放问题
- 急!如何抓取一个网站中的数据库的内容并同时存入本地数据库?
- 我的DELPHI7安装不正确吗?(关于CORBA)
- 我不會做這種程序﹐請教入門方法
- 高分求救﹐我的畢業設計搞不定了﹐有誰做過人事信息維護系統﹐求系統分析文檔。
- delphi里怎么把 String类型转换到 Tbitmap类型
- 新年好
- 状态栏的问题
- 怎在TMemo控件的光标所在位置插入一个字符?
t2.Execute ;
这两句去掉试试!
或是改成
t1:=lvThread.Create(edit1);
end;
试试看
begin
fTxt.Text :=inttostr(i);
sleep(0);//让cpu喘一下气,即使是0也会喘气的:)
end;另外,你这里inherited Create(false)传的是False参数,所以以下两行是多余的
t1.Execute ;
t2.Execute ;