Programm beenden!? So schwer kann das doch nicht sein.
-
ok das mit dem intellisense hab ich jetzt binbekommen
man sollte erstmal ne membervariable auf die klasse machen, dann gehts *gg*
aber andere frage: warum wird immer das event von dem Abbrechen button ausgeführt, wenn man das programm schliesen will (mit dem x)
lässt sich stattdessen auch ein anderes ereignis auswählen?
MfG Mailmaster
-
Mailmaster schrieb:
aber andere frage: warum wird immer das event von dem Abbrechen button ausgeführt, wenn man das programm schliesen will (mit dem x)
lässt sich stattdessen auch ein anderes ereignis auswählen?
MfG Mailmaster
Nein, soweit ich weiß nicht.
-
sprich wenn ich das ändern will muss ich den cancel button löschen, ereignis stehen lassen und einen neuen erzeugen auf dem cancel steht?
so hab ich schliessen vom programm und drücken des cancel button getrennt. funktioniert das so?sry für die blöden fragen, aber mein buch ist noch nicht da
MfG Mailmaster
-
mach einfach nen Doppelklick auf den Button, so wird eine neue Methode erstellte und schon kannst deu dem Cancel-Button dein gewünschtes Verhalten geben.
-
Mailmaster schrieb:
sprich wenn ich das ändern will muss ich den cancel button löschen, ereignis stehen lassen und einen neuen erzeugen auf dem cancel steht?
so hab ich schliessen vom programm und drücken des cancel button getrennt. funktioniert das so?sry für die blöden fragen, aber mein buch ist noch nicht da
MfG Mailmaster
Die Idee sollte funktionieren.
Und ob das so im Buch steht, wage ich mal zu bezweifeln.
-
zur info wie ich das problem gelöst hab:
wenn ich nur den cancel button lösche kommt nen assert failed oder so, fragt mich net was das soll?? (wenns jemand weis, dann kann er mir das gerne sagen, dann weis ich auch was ich machen muss, wenn das nochmal kommt)man kann das ganze aber so lösen:
cancel button löschen und dann für den dialog bei OnClose() nen neues ereignis dazumachen. fertig
dazu sollte man aber ein komplet neues projekt machen, da sonst wieder dieses assert ding kommtbtw: die von mir gedachte methode geht nicht und die von euch anderen beiden auch nicht
THX 4 Help
MfG Mailmaster :p
-
Was für ein Assert war es denn? Hast du mal geschaut?
-
---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Assertion Failed!Program: c:\Vsp\DialogProjekt\Debug\DialogProjekt.exe
File: dlgdata.cpp
Line: 44For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.(Press Retry to debug the application)
---------------------------
Abort Retry Ignore
---------------------------So lautet die Nachricht
MfG Mailmaster
-
sry für doppelpost, aber hab das hier vergessen:
HWND CDataExchange::PrepareCtrl(int nIDC) { ASSERT(nIDC != 0); ASSERT(nIDC != -1); // not allowed HWND hWndCtrl; COleControlSite* pSite = NULL; m_pDlgWnd->GetDlgItem(nIDC, &hWndCtrl); if (hWndCtrl == NULL) { // Could be a windowless OCX pSite = m_pDlgWnd->GetOleControlSite(nIDC); if (pSite == NULL) { TRACE(traceAppMsg, 0, "Error: no data exchange control with ID 0x%04X.\n", nIDC); ASSERT(FALSE); // DAS IST ZEILE 44 AfxThrowNotSupportedException(); } } m_idLastControl = nIDC; m_bEditLastControl = FALSE; // not an edit item by default return hWndCtrl; }
MfG Mailmaster
-
Du hattest ein Control gelöscht, für das du eine Membervariable angelegt hattest.
Die musst du natürlich auch entfernen.
-
lösch ich die auch in dem klassen manager? oder muss ich das manuell im code machen
immerhin taucht die membervariable ziemlich oft auf.(wäre dann auch erst mal die letzte frage)
MfG Mailmaster
-
Direkt im Code.
Aber, kleiner Trick:
Cursor in den Variablennamen setzen und dann Strg+F3 drücken. Für jedes weitere Vorkommen nur noch F3. Damit findest du alle Stellen.Oder gleich in der .h Datei löschen und der Compiler hilft.