Hallo!
Ich schreibe gerade an einer Komponente, die die Kommunikation mit einem Mikrocontroller übernehmen soll.
In dieser Komponente erzeuge ich einen Thread, der mit WaitforSingleObject solange wartet bis etwas passiert. Dann möchte ich ein Event auslösen, sodass der Benutzer es wie jedes andere Event nutzen kann (Bsp. OnClick).
Momentan habe ich es so gelöst, dass ich in der Klasse meines Threads ein Event auslöse, dem ich eine Procedure der Hauptklasse meiner
Unit zuordne, die dann wiederum dort das gewünschte Event auslöst. Diese Lösung finde ich persönlich nicht so schön, habe aber bisher keine andere Möglichkeit gefunden, denn ich kann bei einer Komponente ja nicht so einfach vom Thread aus auf z.b Form1.IrgendeineProcdure zugreifen.
Weiteres Problem besteht darin, dass eine Fehlermeldung kommt, wenn in der Procedure, die der Benutzer in dem Programm dem Event zuweist, showmessage verwendet. Es kommt dann die Fehlermeldung "Leinwand/Bild erlaubt kein Zeichnen".
Daher wollte ich fragen ob ich das Auslösen eines Events in einer Komponente einfacher bewerkstelligen kann bzw. woher der Fehler kommt, damit ich ihn vermeiden kann.
Grüße
AirSpider