Einzelnen Beitrag anzeigen

schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#5

Re: Strings per PostMessage intern weitergeben?

  Alt 23. Jan 2010, 11:20
Danke für eure Hilfe!

Werde mir das mit PostThreadMessage noch ansehen.

Ich habe es derweilen so gelößt:

Hauptform gibt dem Thread die Nachricht das eine Stringlist abzuholen ist.
Da holt sich der Thread über Synchronize die TStringlist von der Hauptform ab.

Geht soweit ganz gut!

EDIT:
Habe mir nun PostThreadMessage angesehen.
Mein Thread erhält auch die Nachrichten.

Im Thread habe ich eine Dauerschleife mit while not Terminated

In dieser Schleife werte ich so die Nachrichten aus:
Delphi-Quellcode:
    while not Terminated do
    begin

      if MyIdTCPClient.Connected then begin
        Sleep(10);

        //check first if message got received from mainform:
        Peekmessage(Msg, 0, 0, 0, PM_REMOVE);

        TranslateMessage(Msg);
        DispatchMessage(Msg);

          case Msg.message of
...
..
Nun habe ich das Problem, das meine Nachricht Msg.message zwei mal ansteht.
Wenn ich im Case Msg.message nach erhalt der Nachricht Msg.message := 0 setze geht es.
Warum bekomme ich die Message zwei mal?
Delphi 2010, Update 4 & 5
  Mit Zitat antworten Zitat