JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=d9154277558410e3690d44a37914f1edMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Warum funktioniert das nicht?

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
joerg.roessel
Mini JLI'ler



Anmeldedatum: 08.01.2004
Beiträge: 24

Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 08:05    Titel: Warum funktioniert das nicht? Antworten mit Zitat

Code:
void Form2::OnButton1()
{
   // TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen
   Form2 fenster;
   fenster.CloseWindow();
}



Bekomme den fehler: Debug Assertation Failed
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
t10ottoo
Senior JLI'ler


Alter: 40
Anmeldedatum: 15.04.2004
Beiträge: 210
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 08:14    Titel: Re: Warum funktioniert das nicht? Antworten mit Zitat

Also du programmierst in C++, ja?
Du willst den Dialog (so heißen die Formen in C++ bzw. MFC oder was auch immer) durch einen Klick auf einen Button schließen?
Dann so:
Code:

void Form2::OnButton1()
{
     // Der aktuelle Dialog wird geschlossen
     CDialog::OnOK();
}


So, nu gehts aber ab in die Schule...*flitz*
_________________
Meine kleine Projekte-Seite
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
joerg.roessel
Mini JLI'ler



Anmeldedatum: 08.01.2004
Beiträge: 24

Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 10:29    Titel: Antworten mit Zitat

Danke!

Aber wieso muß ich den da über CDialog:: zugreifen?
_________________
MCP, MCDST
www.MCSDboard.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
magynhard
Super JLI'ler



Anmeldedatum: 26.04.2003
Beiträge: 461
Wohnort: Wild durch die Welt ;-)
Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 10:55    Titel: Antworten mit Zitat

Da musst du vermutlich Microsoft fragen. Rolling Eyes

Was GUI und C++ angeht, empfehle ich sowieso den Borland C++ Builder.
Nachdem ich Visual C++ MFC verwendet hatte und den Borland C++ Builder (VLC) in der Schule verwenden durfte, war der Umstieg sofort geschehen.

Schade, dass sich der gute Borland C++ Builder nicht sehr durchgesetzt hat, mag wohl am schlechten Vertrieb liegen.
_________________
Niemand ist hoffnungsloser versklavt als der, der fälschlich glaubt frei zu sein. [J. W. Goethe]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 11:36    Titel: Antworten mit Zitat

nepomuk
Na na na Wink Win32API wenn schon Wink Oder denkste Word oder sonst was wurde mit MFC geschrieben? Rolling Eyes
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
t10ottoo
Senior JLI'ler


Alter: 40
Anmeldedatum: 15.04.2004
Beiträge: 210
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 12:44    Titel: Antworten mit Zitat

joerg.roessel hat Folgendes geschrieben:
Danke!

Aber wieso muß ich den da über CDialog:: zugreifen?


nepomuk hat Folgendes geschrieben:
Da musst du vermutlich Microsoft fragen.


Ich glaub, er will wissen, was das bedeutet *g*
Mit CDialog:: rufst du die Funktionen von der Klasse CDialog auf. (glaube, dass es so richtig ist Surprised)
_________________
Meine kleine Projekte-Seite
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
joerg.roessel
Mini JLI'ler



Anmeldedatum: 08.01.2004
Beiträge: 24

Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 12:48    Titel: Antworten mit Zitat

Und was rufe ich dann mit


Code:
Form2 fenster;
   fenster.CloseWindow();


auf?
_________________
MCP, MCDST
www.MCSDboard.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
t10ottoo
Senior JLI'ler


Alter: 40
Anmeldedatum: 15.04.2004
Beiträge: 210
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 19.05.2005, 14:47    Titel: Antworten mit Zitat

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/closewindow.asp

Zitat:
The CloseWindow function minimizes (but does not destroy) the specified window


Gruß
Thomas
_________________
Meine kleine Projekte-Seite
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
under_construction
Junior JLI'ler


Alter: 36
Anmeldedatum: 12.11.2002
Beiträge: 52

Medaillen: Keine

BeitragVerfasst am: 20.05.2005, 23:49    Titel: Antworten mit Zitat

Das, was du erstellt hast bringt im Prinzip nichts.
Gehen wir doch mal Schritt für schritt durch:
Deine Klasse heißt Form2.
In der Klasse erstellst du eine Instanz deiner Klasse.
Wahrscheinlich soll, wenn es nach dir geht die Instanz ("fenster") auf die eigentliche Klasse zeigen, das macht sie aber net.
Dann versuchst du dieses leere Objekt einfach zu schließen, obwohl noch net ma irgendwas geöffnet ist. Da is ne Debug Assertation ganz natürlich.

Wenn es richtig gehen soll müsstest du:
das entweder so coden:
Code:

void Form2::OnButton1()
{
   // TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen
   this->CloseWindow();
}
(Sofern es die Methode CloseWindow überhaupt gibt)
Heißt also, du greifst direkt von deiner Klasse aus (das this-> kann man übrigens auch weglassen) auf die Funktion zu
ODER
eben die statische Funktion OnOK();
Des is sozusagen die Close-Methode für alle Fenster und ähnliches, weil deine Klasse Form2 ja von CDialog letzten Endes über neun Ecken verwandt also abgeleitet ist.

Ich hoffe ich konnte dir damit helfen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
t10ottoo
Senior JLI'ler


Alter: 40
Anmeldedatum: 15.04.2004
Beiträge: 210
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 21.05.2005, 14:29    Titel: Antworten mit Zitat

under_construction hat Folgendes geschrieben:
(Sofern es die Methode CloseWindow überhaupt gibt)


Ja, die gibt es, siehe ein Post über dir. Allerdings ist das nicht die Funktion, die er gesucht hat. Denn er will ja sein Fenster schließen und nicht nur minimieren.
CloseWindow() aber minimiert das Fenster laut MSDN.
_________________
Meine kleine Projekte-Seite
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 21.05.2005, 14:47    Titel: Antworten mit Zitat

CPP:
::DestroyWindow (myHWND);

Kann man sich ja eigentlich denken Very Happy
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum