奇怪,大家来看看。

fffddd 2004-10-03 09:10:41
type
TForm1 = class(TForm)
Button1: TButton;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

type
TTest=class(TThread)
private
procedure TTest_value;
public
protected
procedure Execute; override;
end;


var
Form1: TForm1;
af:TStrings;
ID:integer;

implementation


{$R *.dfm}


var
CS: TRTLCriticalSection;


procedure TTest.TTest_value;
begin
EnterCriticalSection(cs);
//af.Add('fdsafd'); //这儿自己定义的执行会出错
form1.ListBox1.Items.Add('fa'); //这样就不会出错
inc(id); //这个也是自定义的,执行不会出错
LeaveCriticalSection(cs);
end;

procedure TTest.Execute;
begin
TTest_value;
end;


procedure TForm1.Button1Click(Sender: TObject);
var
dd: TTest ;
i:integer;
begin
InitializeCriticalsection(cs);
af:=TStrings.Create;

dd:=TTest.Create(true);
dd.Resume;

end;


各位帮我分析一下哪儿错了。


TStrings和listbox怎么有这样的区别。
...全文
68 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fffddd 2004-10-03
  • 打赏
  • 举报
回复
谢谢,马上结贴,顺祝国庆快乐。
耙子 2004-10-03
  • 打赏
  • 举报
回复
帮助里面说的明明白白,TStrings 是抽象类,不能单独实例化。
这里你应该用 TStringList

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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