Kontrolki okna dialogowego (C++)
Kontrolki można dodawać do okna dialogowego przy użyciu karty Edytor okien dialogowych w oknie Przybornik, które umożliwia wybranie żądanej kontrolki i przeciągnięcie jej do okna dialogowego. Domyślnie okno Przybornik jest ustawione na automatyczne ukrywanie. Jest ona wyświetlana jako karta na lewym marginesie rozwiązania po otwarciu Edytora okien dialogowych. Możesz jednak przypiąć okno Przybornik do pozycji, wybierając przycisk Auto ukryj w prawym górnym rogu okna. Aby uzyskać więcej informacji na temat kontrolowania zachowania tego okna, zobacz Zarządzanie oknami.
Najszybszym sposobem dodawania kontrolek do okna dialogowego, zmieniania położenia istniejących kontrolek lub przenoszenia kontrolek z jednego okna dialogowego do innego jest użycie metody przeciągania i upuszczania. Położenie kontrolki jest nakreślane w linii kropkowanej, dopóki nie zostanie porzucony do okna dialogowego. Po dodaniu kontrolki do okna dialogowego z metodą przeciągania i upuszczania kontrolka otrzymuje standardową wysokość odpowiednią dla tego typu kontrolki.
Podczas dodawania kontrolki do okna dialogowego lub zmieniania jego położenia końcowego można określić przez prowadnice lub marginesy lub czy siatka układu jest włączona.
Po dodaniu kontrolki do okna dialogowego możesz zmienić właściwości, takie jak podpis w oknie właściwości. Możesz również wybrać wiele kontrolek i zmienić ich właściwości jednocześnie.
Aby uzyskać więcej informacji na temat Edytora okien dialogowych, zobacz, jak dodawać, edytować lub usuwać kontrolki, kontrolki układu oraz definiować dostęp i wartości kontroli.
Aby uzyskać więcej informacji na temat kontrolek i okien dialogowych, zobacz Klasy kontrolek, Klasy okien dialogowych i Style paska przewijania.
Standardowe kontrolki dostępne w przyborniku ze zdarzeniami domyślnymi to:
Nazwa formantu | Zdarzenie domyślne |
---|---|
Kontrolka Button | BN_CLICKED |
Kontrolka Pole wyboru | BN_CLICKED |
Kontrolka Pole kombi | CBN_SELCHANGE |
Edytuj kontrolkę | EN_CHANGE |
Pole grupy | (nie dotyczy) |
Kontrolka Pole listy | LBN_SELCHANGE |
Kontrolka przycisku radiowego | BN_CLICKED |
Kontrolka Tekst statyczny | (nie dotyczy) |
Kontrolka obrazu | (nie dotyczy) |
Kontrolka edycji wzbogaconej 2.0 | EN_CHANGE |
Kontrolka paska przewijania | NM_THEMECHANGED |
Uwaga
Aby uzyskać więcej informacji na temat używania kontrolki RichEdit 1.0 z MFC, zobacz Using the RichEdit 1.0 Control with MFC and Rich Edit Control Examples (Używanie kontrolki RichEdit 1.0 z MFC i przykładami kontrolki edycji wzbogaconej).
Typowe kontrolki systemu Windows dostępne w przyborniku w celu zapewnienia większej funkcjonalności to:
Nazwa formantu | Zdarzenie domyślne |
---|---|
Kontrolka suwaka | NM_CUSTOMDRAW |
Sterowanie spinem | UDN_DELTAPOS |
Kontrolka postępu | NM_CUSTOMDRAW |
Kontrolka gorąca | NM_OUTOFMEMORY |
Kontrolka listy | LVN_ITEMCHANGE |
Kontrolka drzewa | TVN_SELCHANGE |
Kontrolka tabulacji | TCN_SELCHANGE |
Kontrolka animacji | ACN_START |
Kontrolka selektora daty i godziny | DTN_DATETIMECHANGE |
Kontrolka Kalendarz miesiąca | MCN_SELCHANGE |
Kontrolka adresów IP | IPN_FIELDCHANGED |
Rozszerzona kontrolka Pole kombi | |
Kontrolka niestandardowa | TTN_GETDISPINFO |
Kontrolki niestandardowe
Edytor okien dialogowych umożliwia używanie istniejących kontrolek niestandardowych lub użytkownika w szablonie okna dialogowego.
Uwaga
Kontrolki niestandardowe w tym sensie nie należy mylić z kontrolkami ActiveX. Kontrolki ActiveX były czasami nazywane kontrolkami niestandardowymi OLE. Ponadto nie należy mylić tych kontrolek z kontrolkami rysowanymi przez właściciela w systemie Windows.
Ta funkcja ma na celu korzystanie z kontrolek innych niż te dostarczane przez system Windows. W czasie wykonywania kontrolka jest skojarzona z klasą Window (nie taką samą jak klasa C++). Bardziej typowym sposobem wykonania tego samego zadania jest zainstalowanie dowolnej kontrolki, takiej jak kontrolka statyczna, w oknie dialogowym. Następnie w czasie wykonywania w funkcji OnInitDialog usuń tę kontrolkę i zastąp ją własną kontrolką niestandardową.
Uwaga
Jest to stara technika. W większości przypadków zaleca się napisanie kontrolki ActiveX lub podklasy wspólnej kontrolki systemu Windows.
W przypadku tych kontrolek niestandardowych można ograniczyć do następujących elementów:
Ustawianie lokalizacji w oknie dialogowym.
Wpisywanie podpisu.
Identyfikowanie nazwy klasy systemu Windows kontrolki, ponieważ kod aplikacji musi zarejestrować kontrolkę pod tą nazwą.
Wpisywanie 32-bitowej wartości szesnastkowej, która ustawia styl kontrolki.
Ustawianie stylu rozszerzonego.
Wymagania
Win32