Abrufen von Daten aus dem Dialogfeldobjekt
Das Framework bietet eine einfache Möglichkeit, die Werte von Steuerelementen in einem Dialogfeld zu initialisieren und Werte aus den Steuerelementen abzurufen. Der mühsamere manuelle Ansatz besteht darin, Funktionen wie die SetDlgItemText
Klassen- und GetDlgItemText
Memberfunktionen CWnd
aufzurufen, die für Steuerungsfenster gelten. Mit diesen Funktionen greifen Sie auf jedes Steuerelement einzeln zu, um seinen Wert festzulegen oder abzurufen, indem Sie Funktionen wie SetWindowText
z. B. und GetWindowText
. Der Ansatz des Frameworks automatisiert sowohl die Initialisierung als auch das Abrufen.
Mit dem Austausch von Dialogfelddaten (Dialog Data Exchange, DDX) können Sie Daten zwischen den Steuerelementen im Dialogfeld und Membervariablen im Dialogfeldobjekt einfacher austauschen. Dieser Austausch funktioniert auf beide Arten. Um die Steuerelemente im Dialogfeld zu initialisieren, können Sie die Werte der Datenmember im Dialogfeldobjekt festlegen, und das Framework überträgt die Werte an die Steuerelemente, bevor das Dialogfeld angezeigt wird. Anschließend können Sie die Dialogdatenmitglieder jederzeit mit den vom Benutzer eingegebenen Daten aktualisieren. Zu diesem Zeitpunkt können Sie die Daten verwenden, indem Sie auf die Datenmememmvariablen verweisen.
Sie können auch festlegen, dass die Werte von Dialogfeldsteuerelementen automatisch mit der Dialogdatenüberprüfung (DDV) überprüft werden.
DDX und DDV werden in Dialog Data Exchange und Validation ausführlicher erläutert.
Für ein modales Dialogfeld können Sie alle Daten abrufen, die der Benutzer beim Zurückgeben von IDOK eingegeben DoModal
hat, aber bevor das Dialogfeldobjekt zerstört wird. Für ein modusloses Dialogfeld können Sie Jederzeit Daten aus dem Dialogobjekt abrufen, indem UpdateData
Sie das Argument TRUE aufrufen und dann auf Die Variablen der Dialogklassenmememm zugreifen. Dieses Thema wird in Dialog Data Exchange und Validation ausführlicher behandelt.