Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

gibt es in der MFC eine andere Möglichkeit einen Dialog zu aktualisieren, als den UpdateData-Befehl?

Beispiel:

BOOL Beispieldialog::OnInitDialog()

{

   UpdateData(TRUE);


   Anweisungen;


   UpdateData(FALSE);

}

Jedes mal wenn das UpdateData aufgerufen wird, krieg ich als Fehlermeldung:

Debug Assertion Failed!

File: dlgdata.cpp

Durch Ignorieren verschwindet das Fenster zwar, jedoch soll es erst gar nicht auftauchen.

Geschrieben

Ein ASSERT Makro wird fehlschlagen sein. Diese Makros werden nur eingefügt, wenn Du im Debug-Modus compilierst. Am besten suchst Du den Fehler und behebst ihn, es könnte sonst zu einem Absturz des Programms führen.

Grundsätzlich mußt Du das von MFC verwendete Binden von Controls an Varaiblen nicht nutzen, sondern könntest mit den eintsprehenden Befehlen die Werte selbst aus den Controls auslesen und hinein setzen. Allerdings würde ich die beiden Vorgehensweisen nicht mischen und wenn Du schon MFC benutzen willst, würde ich es im "MFC-Style" machen.

Geschrieben

Da gebe ich Bubble recht, vo allem da du schneller Fehler bei den eigenen Controlupdate machst, als dies bei UpdateData der Fall ist.

Du solltest einmal prüfen, ob die richtigen Variablen mit den richtigen DDX Befehlen angesprochen werden, und zusätzlich ob die Variablen auch alle Valid sind. Die DDX werden durch das UpdateData aufgerufen (genauer : DoDataExchange(CDataExchange* pDX))

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...