SDI mit Button schließen



  • Hallo,

    also ich steh schon länger vor einem Problem und finde einfach keine Lösung dafür.

    Ich habe eine SDI-Anwendung, die ich mit einem Button schießen will.

    Bei einer Dialog-Anwendung geht das ja einfach mit OnOK(); , wie aber bei einer SDI-Anwendung.

    Ich hoffe Ihr könnt mir wiedereinmal helfen.

    MfG

    Bonzon



  • Vielleicht damit?

    CWinApp::ExitInstance();
    

    Beim Anlegen éiner SDI-Anwendung über den Assistenten stehen die Quellen aber bereits zur Verfügung.



  • Hmm das hat leider nicht geklappt, die Funktion CWinApp::ExitInstance() steht leider noch nicht zur verfügung, auch wenn ich es mit dem Assistenten gemacht habe.

    Gibt es vieleciht dafür eine Lösung?

    MfG Bonzon



  • Ok nun Kompiliert er das ganze endlich, nur wenn ich nun auf den button klicke, passiert überhaupt nix...

    Woran kann das liegen??

    Ich bitte um Hilfe, ich komm einfach nicht weiter.

    MfG

    Bonzon


  • Mod

    Du sendest einfach WM_CLOSE an Dein Hauptfenster oder rufts einfach DestroyWindow auf.



  • Erstmal vielen Dank für die superschnellen Antworten.

    Um das ganze mal vorn weg zu nehmen, ich bin noch ziemlich neu auf dem Gebiet der C++-Welt.

    Ich habe nun die Funktion DestroyWindow(); verwendet. Nun ist mein Problem, das wenn ich den Button drücke, sich nicht das Fenster schließt, sondern nur der Inhalt darin. Das will ich ja aber nicht.
    Wie bekomm ich raus, wie das Hauptfenster heißt?

    Mit WM_CLOSE kann ich überhaupt nix anfagen, da ich nicht weiß wie ich das Ereigniss an die Anwenung sende.

    Ich hoffe Sie könne mir weiterhelfen.

    MfG

    Bonzon



  • Sieh die mal den Befehl

    SendMessage(...)
    

    an. Vielleicht hilft dir das weiter.


  • Mod

    AfxGetMainWnd()->DestroyWindow();


Anmelden zum Antworten