ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
5722
5722
EMPFEHLEN
-
Also...
Ich habe mit VC++ 2005 einige windowsForms fenster erstellt.
Wenn ich ein "neues" fenster öffne möchte ich, dass das "alte" fenster geschlossen wird.
Wird das fenster über einen button seperat geschlossen, gibt es mit ...
...kein problem.Code :1
this->Close();
Wenn ich allerdings ein neues Fenster über bspw. einen button öffne und dabei das alte fenster schließen möchte ... wird nur das neue fenster geöffnet ABER das alte nicht geschlossen.
Code :1 2
this->Close(); newAnleitung.ShowDialog(this);
Woran kann das liegen und wie kann ich das problem beseitigen
Hat jemand einen rat für mich?
Gruß Caro
-
Hi,
Ein Blick in die MSDN hätte dir verraten, dass der Code nach this->CLose() nicht mehr aufgrufen wird.
Close() gibt die Resoucen der Form frei.
http://msdn.microsoft.com/library/de...CloseTopic.asp
Entweder, du öffnest erst die neue Form und schließt dann die Alte oder du schreibst dir eine extra Klasse, die solche Ereignisse extern handledGrüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Hey...nochmals!
Wenn Ich erst das neue Fenster aufrufe und dann das alte fenster schließe, klappt es schon besser aber nicht perfekt :-P
denn unten in der taskleiste wird die "geschlosse" Form immer noch angezeigt, weswegen mir auch erst gar nicht aufgefalln ist, das es überhaupt geschlossen ist.
Wie beseitige ich das auch noch? vll mit Hide( )?
---ODER wie schreibe ich denn eine extra klasse zum schließen des programms? ich habe da irgendwie keine vorstellungen...
kann mir jemand auf die sprünge helfen
Gruß Caro
@ Niggo vielen dank für deine vielen Tips & natürlich auch an alle anderen die sich gedanken machen
EDIT:
Mir ist außerdem aufgefallen, dass wenn ich ein Fenster_A über das Fenster_B öffnen möchte gibt es kein problem ABER wenn ich Fenster_A auch noch zusätzlich über Fenster_C öffnen möchte...werden mir einige Fehlermeldung ausgespuckt, obwohl ich bei B & C dasselbe gemacht habe...
-Weiß jemand wo hier das Problem steckt?
Code :1 2 3 4 5
#include "frmFenster_A" ... frmFenster_A newFenster_A; ... newFenster_A.ShowDialog(this);
Geändert von blotte (13.09.06 um 18:27 Uhr)
-
Hi,
Die Form ist noch in der Taskleiste zu sehen, da sie nicht freigegeben wird. Sie hält noch eine Referenz auf die neue Form. Mit Hide() würdest du sie zwar verstecken (oder auch ShowInTaskbar = false), der Speicher wird jedoch nicht freigegeben.
Was hast du eigentlich vor? soll das sowas wie ein Wizard werden?Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Also...wizard kann man das ganze glab ich nennen
ich habe ein Startfenster von dem komme ich zum Hauptfenster und von dort kann ich zwischen verschiedene aktionen wählen, welche dann wiederum zu einem neuen Fenster führen...
ich möchte jetzt das man evt auch ZURÜCKSPRINGEN kann ins hauptfenster ...
wenn ich das dann tue :
Code :1 2 3 4 5 6
#include "frmHauptfenster.h" ... frmHauptfenster ^newHauptfenster; ... newHauptfenster = gcnew frmHauptfenster(); //leicht verändert newHauptfenster->ShowDialog(this);
kommen fehlermeldungen-->wahrscheinlich WEIL 2 mal dasselbe in verschieden forms steht...
kann ich evt. auf den HAUPTFENSTER aufruf im STARTFENSTER verweisen?
Ich hoffe ich habe mich einigermaßen deutlch ausgedrückt
MfG Caro
-
Hi,
dann hast du mit dem Ansatz den falschen gewählt. Such mal im Forum nach Wizard, es gibt einen Thread in dem einige Links zu dem Thema stehen.
Oder mal bei z.B. www.codeproject.com oder ähnlichen Seiten suchen. Da gibt es genug Beispiele zu dem Thema. diese sind zwar meist in C#, was jedoch kein Problem darstellen sollte für einen C++ler.
Es wäre besser, wenn du die einzelnen Seiten als UserControl machst und diese der Reihe nach aufrufst, das erspart dir viel Aufwand (und ist auch eleganter)Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
Ähnliche Themen
-
Link in altem Fenster öffnen + Fenster schließen
Von PhoenixDH im Forum Javascript & AjaxAntworten: 17Letzter Beitrag: 08.09.04, 22:10 -
Fenster öffnen, Inhalt drucken, Fenster schließen
Von dermac'z im Forum Javascript & AjaxAntworten: 8Letzter Beitrag: 02.07.04, 15:44 -
Fenster schließen
Von myplex im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 17.04.04, 14:10 -
[JS] Wie kann ich Fenster schließen?
Von Andreas Gaisbauer im Forum Webmaster FAQAntworten: 0Letzter Beitrag: 05.08.03, 15:32 -
Wie kann ich in Flash ein Fenster schließen?
Von killkrog im Forum Flash PlattformAntworten: 12Letzter Beitrag: 27.04.02, 21:41





Zitieren

Login




