Einzelnen Beitrag anzeigen

BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#1

Nachrichtenfunktion für Threat erstellen und umleiten

  Alt 2. Sep 2009, 08:28
Hallo und guten Tag an alle,

Habe jetzt in Ergänzung zu diesem Thread die Problematik, dass meine Nachrichten vom Threat in den Hauptthread "umgeleitet" werden müssen. Habe mir dazu schon einen Teil von Luckie´s Tut Win32Api angeschaut. Dabei ist mir zumindest erstmal eine Idee gekommen, wie ich glaube das Problem lösen zu können und wollte (bevor ich Stunden mit Umsetzung und Troubleshooting verbringe, um dann eventuell heraus zu finden, dass der Weg nicht funktioniert) nachfragen, ob der Weg umsetzbar ist oder eventuell total falsch oder elegantere Lösungen existieren.

Delphi-Quellcode:
function WndProc(hWnd: HWND; uMsg: UINT; wParam: wParam; lParam: LParam):
lresult; stdcall;
var
x, y : integer; //Variablen für Fensterposition
begin
Result := 0;
case uMsg of
WM_CREATE:
begin
{Fenster zentrieren}
x := GetSystemMetrics(SM_CXSCREEN); //Screenhöhe & -breite
y := GetSystemMetrics(SM_CYSCREEN);
{Fenster auf neue Position verschieben}
MoveWindow(hWnd, (x div 2) - (WindowWidth div 2),
(y div 2) - (WindowHeight div 2),
WindowWidth, WindowHeight, true);
end;
else
Result := DefWindowProc(hWnd,uMsg,wParam,lParam);
end;
end;
Außzug aus dem Tutorial

Also wenn ich das richtig verstanden habe (ist in dem anfangs genannten Thread so gesagt worden) existiert eine solche Nachrichtenfunktion nicht für den TThread. Diese muss ich nach dem Muster aus dem Tut implementieren und dann eigentlich nur die hWnd von meinem Hauptthreat übergeben und in der Case-Abfrage meine eigenen WM´s dort definieren (also WM_User+1: schicke eine Nachricht an Hauptthreat, dass irgenwas hier im Thread passiert ist).
Ist an dem, wie ich das verstanden hab eventuell noch ein Denkfehler oder habe ich da etwas falsch verstanden, weil eigentlich scheint es nicht schwer zu sein (was mich generell stutzig macht ).

[Edit] OT t->d umgewandelt(hoffe hab alle gefunden )[/Edit]
2. Account Sero
  Mit Zitat antworten Zitat