Es mag eine blöde Idee sein, aber vielleicht auch die Lösung.
Ich habe eine Win32GUI Anwendung mit mehreren Child-Fenstern inkl. 2 Textfeldern.
Die Anwendung enthält ein paar Funktionen, die etwas Zeit brauchen, z.B. liest sie via WinInet regelmässig Daten von meiner Webseite und zeigt diese im ersten Textfeld an.
Logisch, wenn der User irgendwas in das andere Textfeld schreiben will, während die Anwendung gerade mit WinInet beschäftigt ist, stottert die Anzeige.
Meine Idee wäre, die beiden Textfelder in verschiedene Threads zu packen.
Ich weiss, dass ich dazu 2 Threads mit jeweils eigener Nachrichtenschleife brauche, aber ich bin mir nicht sicher, wie das Grundgerüst dazu aussieht.
Kann ich überhaupt in einem zweiten Thread ein Fenster erstellen, was sich wie ein Child des MainWindow im ersten Thread benimmt?
Wie koordiniere ich z.B. WM_SIZE, so dass das Child im zweiten Thread an seinem Platz bleibt.
Oder ganz grundsätzlich gefragt, ist meine Idee machbar und wenn ja, dann wie, oder wie sonst kann ich das lösen?
Ich habe eine Win32GUI Anwendung mit mehreren Child-Fenstern inkl. 2 Textfeldern.
Code:
Display = CreateWindowEx(
WS_EX_CLIENTEDGE,
"edit","",
WS_CHILD|ES_MULTILINE|ES_READONLY,
0,0,200,200,
hWnd,0,hinstance,0
);
Input = CreateWindowEx(
WS_EX_CLIENTEDGE,
"edit","",
WS_CHILD|ES_MULTILINE,
0,200,200,200,
hWnd,0,hinstance,0
);
Die Anwendung enthält ein paar Funktionen, die etwas Zeit brauchen, z.B. liest sie via WinInet regelmässig Daten von meiner Webseite und zeigt diese im ersten Textfeld an.
Logisch, wenn der User irgendwas in das andere Textfeld schreiben will, während die Anwendung gerade mit WinInet beschäftigt ist, stottert die Anzeige.
Meine Idee wäre, die beiden Textfelder in verschiedene Threads zu packen.
Ich weiss, dass ich dazu 2 Threads mit jeweils eigener Nachrichtenschleife brauche, aber ich bin mir nicht sicher, wie das Grundgerüst dazu aussieht.
Kann ich überhaupt in einem zweiten Thread ein Fenster erstellen, was sich wie ein Child des MainWindow im ersten Thread benimmt?
Wie koordiniere ich z.B. WM_SIZE, so dass das Child im zweiten Thread an seinem Platz bleibt.
Oder ganz grundsätzlich gefragt, ist meine Idee machbar und wenn ja, dann wie, oder wie sonst kann ich das lösen?