Jetzt kommt bei mir eine neue Frage auf. Ich hab versucht mein Programm auf das Threadobjekt umzustellen. Allerdings gelingt es mir nicht mal, den Thread zu starten. Probieren tu ich dies mit folgendem Code:
Unit1:
Delphi-Quellcode:
...
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
drawTH : testTH;
begin
drawTH.Create(FALSE);
end;
Unit 2:
Delphi-Quellcode:
...
uses
unit1, Classes;
type
testTH = class(TThread)
private
{ Private declarations }
procedure drawIt;
protected
procedure Execute; override;
public
end;
implementation
{ testTH }
procedure testTH.Execute;
begin
Synchronize(drawIt);
end;
procedure testTH.drawIt;
begin
Form1.Edit1.Text := 'geht';
end;
Ergebniss ist eine EAccessViolation...