Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

UpdateData ersetzen

Empfohlene Antworten

Veröffentlicht

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.

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.

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))

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.