Forum: Algorithmen, Datenstrukturen und Klassendesign
by Sir Rufo,
3. Feb 2012
Also ich habe da mal auf die Schnelle zusammengehauen mit dem ComponentState und das funktioniert einwandfrei
procedure TMyThreadComponent.DoEvent( const Info : string );
begin
if Assigned( Edit ) and ( Self.ComponentState = )
then
Edit.Text := Info;
end;
Die Komponente hat als Owner das Formular und sobald das Formular in die ewigen Jagdgründe geschickt wird, dann ändert sich...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Sir Rufo,
3. Feb 2012
Du willst und kannst nicht wissen, was am FrontEnd passiert, also wenn das Formular sich im Nirwana auflöst, willst es aber trotzdem wissen?
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Sir Rufo,
3. Feb 2012
Ok, wie wäre denn sowas:
type
TMyThreadComponent = class( TComponent )
private
FMyThread : TMyThread;
FEdit : TEdit;
procedure SetEdit( const Value : TEdit );
protected
procedure DoEvent( const Info : string );
public
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Sir Rufo,
3. Feb 2012
Aber irgendwie habe ich folgendes noch nicht verstanden:
Willst du jetzt
eine Komponente (Ableitung von TComponent) entwickeln mit einem darin werkelnden Thread
einen Thread, der auf eine Komponente (TEdit) zugreift
Im Falle von a) wie soll denn der Benutzer den Thread überhaupt beenden können und vor allem sollen? Der Thread sollte dann doch so gekapselt sein, dass man eben nicht...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Sir Rufo,
3. Feb 2012
Wenn die Anwendung beendet wird, dann sollte eigentlich TApplication.Terminated auf True sein