nach Create immer noch Hwnd 0x0000
-
Ich kann doch mein Array so groß wählen wie ich will, wenn ich nur auf zuvor initialisierte Pointer zugreife sollte es keine Fehler geben, oder liege ich falsch?
und beim dritten IDD_DIALOG3 (im Array der Index 2) habe ich nach des Aufrufes von Create immer noch ein hWnd von 0x00 obwohl ich dort einen wert zugewiesen bekommen müsste und wenn ich dann versuche den Dialog darzustellen bekomme ich einen Fehler (da hWnd ja 0x00 ist und keinen Wert hat leuchtet mir der Fehler ein, blos warum wird hWnd kein Wert zugewiesen?)
Bei den anderen beiden IDD_DIALOG1 und IDD_DIALOG2 (Array 0 und 1) funktioniert es einwandfrei auch mit einer Arraygröße von 15.
-
Ich dachte, du meinst vielleicht das Arrayelement mit Index 3. Ansonsten sieht der code ok aus, der Fehler liegt woanders
-
danke, das dachte ich auch schon, aber wo kann es liegen, wenn ich die Klasse von CDialog ableite?
-
Wo steht der erste teil, des codes, den du gepostet hast, wo der zweite?
-
beides in der in der FAQ vorgestellten Klasse für Registerkarten.
[url] http://www.fun-soft.de/script/?doc=vc&from=20&until=40#R1 [/url]
also in Initialisieren() (2ter Teil) und im Konstruktor (erster Teil)
Gruß XZ59
-
Hat niemand noch eine idee?
Gruß XZ59
-
Zeig mal den Code, der abstürzt.
-
void CMyTabCtrl::Initialisierung() { m_aktuelleSeite=0; m_tabellenSeite[0]->Create(IDD_TESTABLAUF, this); //funktioniert m_tabellenSeite[1]->Create(IDD_PROTOKOLL, this); // auch noch m_tabellenSeite[2]->Create(IDD_MANUELLE_TB, this); //hier bekomme ich kein hWnd (also ist 0x00) m_tabellenSeite[0]->ShowWindow(SW_SHOW); //geht wieder m_tabellenSeite[1]->ShowWindow(SW_HIDE); //auch m_tabellenSeite[2]->ShowWindow(SW_HIDE); //und hier hauts ihn dann raus SetRec(); }
-
Schick ma den Code. Aber ohne Debug-Verzeichnis, mit res-Verzeichnis und gezippt.
-
Was ich mir noch vorstellen könnte, wäre, dass IDD_MANUELLE_TB zwar noch irgendwo definiert ist, es aber keine Dialogresource gibt, die diese ID verwendet.
[ Dieser Beitrag wurde am 20.11.2002 um 16:43 Uhr von dEUs editiert. ]
-
Du musst einfach vor der Zeile
m_tabellenSeite[2]->Create(IDD_MANUELLE_TB, this); //hier bekomme ich kein hWnd (also ist 0x00)
die Funktion AfxInitRichEdit aufrufen.
-
danke dir