Udostępnij za pośrednictwem


Pobieranie danych z obiektu okna dialogowego

Struktura zapewnia łatwy sposób inicjowania wartości kontrolek w oknie dialogowym i pobierania wartości z kontrolek. Bardziej pracowite ręczne podejście polega na wywoływaniu funkcji, takich jak SetDlgItemText funkcje składowe i GetDlgItemText klasy CWnd, które mają zastosowanie do okien sterowania. Dzięki tym funkcjom uzyskujesz dostęp do każdej kontrolki indywidualnie, aby ustawić lub uzyskać jej wartość, wywołując funkcje, takie jak SetWindowText i GetWindowText. Podejście struktury automatyzuje inicjowanie i pobieranie.

Wymiana danych dialogowych (DDX) umożliwia łatwiejszą wymianę danych między kontrolkami w oknie dialogowym i zmiennymi składowymi w obiekcie okna dialogowego. Ta wymiana działa na oba sposoby. Aby zainicjować kontrolki w oknie dialogowym, można ustawić wartości elementów członkowskich danych w obiekcie okna dialogowego, a struktura przeniesie wartości do kontrolek przed wyświetleniem okna dialogowego. Następnie możesz w dowolnym momencie zaktualizować składowe danych okna dialogowego przy użyciu danych wprowadzonych przez użytkownika. W tym momencie możesz użyć danych, odwołując się do zmiennych składowych danych.

Można również ustawić wartości kontrolek okna dialogowego, które mają być weryfikowane automatycznie przy użyciu weryfikacji danych okna dialogowego (Przeglądarka danych diagnostycznych).

DDX i Przeglądarka danych diagnostycznych wyjaśniono bardziej szczegółowo w oknie dialogowym Wymiana danych i walidacja.

W przypadku modalnego okna dialogowego można pobrać dowolne dane wprowadzone przez użytkownika podczas DoModal zwracania elementu IDOK, ale przed zniszczeniem obiektu okna dialogowego. W przypadku okna dialogowego bez moderowania można w dowolnym momencie pobrać dane z obiektu okna dialogowego, wywołując UpdateData argument TRUE , a następnie korzystając ze zmiennych składowych klasy okna dialogowego. Ten temat został omówiony bardziej szczegółowo w temacie Wymiana danych okna dialogowego i walidacja.

Zobacz też

Praca z oknami dialogowymi w MFC