Udostępnij za pośrednictwem


Pole kombi (kontrolki systemu Windows)

Ta sekcja zawiera informacje o elementach programowania używanych z polami kombi. Pole kombi jest unikatowym typem kontrolki zdefiniowanym przez klasę COMBOBOX, która łączy wiele funkcji pola listy i kontrolkę edycji.

Przeglądy

Temat Treść
informacje o polach kombi W tej sekcji omówiono różne rodzaje pól kombi.
funkcji pola kombi W tym dokumencie omówiono funkcje pola kombi.
przy użyciu pól kombi Przykłady kodu w tej sekcji przedstawiają sposób wykonywania zadań skojarzonych z polami kombi.

Funkcje

Temat Treść
DlgDirListComboBox Zamienia zawartość pola kombi na nazwy podkatalogów i plików w określonym katalogu. Listę nazw można filtrować, określając zestaw atrybutów pliku. Lista nazw może zawierać zamapowane litery dysku.
DlgDirSelectComboBoxEx Pobiera bieżące zaznaczenie z pola kombi wypełnionego za pomocą funkcji DlgDirListComboBox. Zaznaczenie jest interpretowane jako litera dysku, plik lub nazwa katalogu.
getComboBoxInfo Pobiera informacje o określonym polu kombi.

Makra

Temat Treść
ComboBox_AddItemData Dodaje dane elementu do listy w polu kombi w określonej lokalizacji. Tego makra można użyć lub wysłać jawnie komunikat CB_ADDSTRING.
ComboBox_AddString Dodaje ciąg do listy w polu kombi. Jeśli pole kombi nie ma stylu CBS_SORT, ciąg zostanie dodany na końcu listy. W przeciwnym razie ciąg zostanie wstawiony do listy, a lista zostanie posortowana. Tego makra można użyć lub wysłać jawnie komunikat CB_ADDSTRING.
ComboBox_DeleteString Usuwa element w określonej lokalizacji na liście w polu kombi. Tego makra można użyć lub jawnie wysłać komunikat CB_DELETESTRING.
ComboBox_Dir Dodaje nazwy do listy wyświetlanej przez pole kombi. Makro dodaje nazwy katalogów i plików, które pasują do określonego ciągu i zestawu atrybutów pliku. Można również dodać zamapowane litery dysku do listy w polu kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_DIR.
ComboBox_Enable Włącza lub wyłącza kontrolkę pola kombi.
ComboBox_FindItemData Znajduje pierwszy element na liście pól kombi z określonymi danymi elementu. Tego makra można użyć lub jawnie wysłać komunikat CB_FINDSTRING.
ComboBox_FindString Znajduje pierwszy ciąg na liście pól kombi rozpoczynających się od określonego ciągu. Tego makra można użyć lub jawnie wysłać komunikat CB_FINDSTRING.
ComboBox_FindStringExact Znajduje pierwszy ciąg na liście pól kombi, który dokładnie pasuje do określonego ciągu, z tą różnicą, że wyszukiwanie nie uwzględnia wielkości liter. Tego makra można użyć lub wysłać jawnie komunikat CB_FINDSTRINGEXACT.
ComboBox_GetCount Pobiera liczbę elementów w polu listy pola kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_GETCOUNT.
ComboBox_GetCueBannerText Pobiera tekst baneru wskazówek wyświetlany w kontrolce edycji pola kombi. Użyj tego makra lub wyślij jawnie komunikat CB_GETCUEBANNER.
ComboBox_GetCurSel Pobiera indeks aktualnie wybranego elementu w polu kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_GETCURSEL.
ComboBox_GetDroppedControlRect Pobiera współrzędne ekranu pola kombi w stanie porzuconym. Tego makra można użyć lub jawnie wysłać komunikat CB_GETDROPPEDCONTROLRECT.
ComboBox_GetDroppedState Określa, czy lista rozwijana w kontrolce pola kombi jest widoczna. Tego makra można użyć lub wysłać jawnie komunikat CB_GETDROPPEDSTATE.
ComboBox_GetExtendedUI Określa, czy pole kombi używa domyślnego interfejsu użytkownika lub rozszerzonego interfejsu użytkownika. Tego makra można użyć lub wysłać jawnie komunikat CB_GETEXTENDEDUI.
ComboBox_GetItemData Pobiera wartość zdefiniowaną przez aplikację skojarzona z określonym elementem listy w polu kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_GETITEMDATA.
ComboBox_GetItemHeight Pobiera wysokość elementów listy w polu kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_GETITEMHEIGHT.
ComboBox_GetLBText Pobiera ciąg z listy w polu kombi. Tego makra można użyć lub jawnie wysłać komunikat CB_GETLBTEXT.
ComboBox_GetLBTextLen Pobiera długość ciągu na liście w polu kombi. Tego makra można użyć lub jawnie wysłać komunikat CB_GETLBTEXTLEN.
ComboBox_GetMinVisible Pobiera minimalną liczbę widocznych elementów na liście rozwijanej pola kombi.
ComboBox_GetText Pobiera tekst z kontrolki pola kombi.
ComboBox_GetTextLength Pobiera liczbę znaków w tekście pola kombi.
ComboBox_InsertItemData Wstawia dane elementów na liście w polu kombi w określonej lokalizacji. Tego makra można użyć lub wysłać jawnie komunikat CB_INSERTSTRING.
ComboBox_InsertString Dodaje ciąg do listy w polu kombi w określonej lokalizacji. Tego makra można użyć lub wysłać jawnie komunikat CB_INSERTSTRING.
ComboBox_LimitText Ogranicza długość tekstu, który użytkownik może wpisać w kontrolce edycji pola kombi. Tego makra można użyć lub jawnie wysłać komunikat CB_LIMITTEXT.
ComboBox_ResetContent Usuwa wszystkie elementy z pola listy i edytuje kontrolkę pola kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_RESETCONTENT.
ComboBox_SelectItemData Wyszukuje listę w polu kombi dla elementu zawierającego określone dane elementu. Jeśli zostanie znaleziony pasujący element, zostanie wybrany element. Tego makra można użyć lub wysłać jawnie komunikat CB_SELECTSTRING.
ComboBox_SelectString Wyszukuje listę w polu kombi dla elementu rozpoczynającego się od znaków w określonym ciągu. Jeśli zostanie znaleziony pasujący element, zostanie wybrany element. Tego makra można użyć lub wysłać jawnie komunikat CB_SELECTSTRING.
ComboBox_SetCueBannerText Ustawia tekst baneru wskazówek wyświetlany dla kontrolki edycji pola kombi.
ComboBox_SetCurSel Ustawia aktualnie wybrany element w polu kombi. Tego makra można użyć lub jawnie wysłać komunikat CB_SETCURSEL.
ComboBox_SetExtendedUI Wybiera domyślny interfejs użytkownika lub rozszerzony interfejs użytkownika dla pola kombi zawierającego styl CBS_DROPDOWN lub CBS_DROPDOWNLIST. Tego makra można użyć lub jawnie wysłać komunikat CB_SETEXTENDEDUI.
ComboBox_SetItemData Ustawia wartość zdefiniowaną przez aplikację skojarzona z określonym elementem listy w polu kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_SETITEMDATA.
ComboBox_SetItemHeight Ustawia wysokość elementów listy lub pole wyboru w polu kombi. Tego makra można użyć lub wysłać jawnie komunikat CB_SETITEMHEIGHT.
ComboBox_SetMinVisible Ustawia minimalną liczbę widocznych elementów na liście rozwijanej pola kombi.
ComboBox_SetText Ustawia tekst pola kombi.
ComboBox_ShowDropdown Wyświetla lub ukrywa listę w polu kombi. Tego makra można użyć lub jawnie wysłać komunikat CB_SHOWDROPDOWN.

Wiadomości

Temat Treść
CB_ADDSTRING Dodaje ciąg do pola listy pola kombi. Jeśli pole kombi nie ma stylu CBS_SORT, ciąg zostanie dodany na końcu listy. W przeciwnym razie ciąg zostanie wstawiony do listy, a lista zostanie posortowana.
CB_DELETESTRING Usuwa ciąg w polu listy pola kombi.
CB_DIR Dodaje nazwy do listy wyświetlanej przez pole kombi. Komunikat dodaje nazwy katalogów i plików, które pasują do określonego ciągu i zestawu atrybutów pliku. CB_DIR można również dodać zmapowane litery dysku do listy.
CB_FINDSTRING Wyszukuje pole listy pola kombi dla elementu rozpoczynającego się od znaków w określonym ciągu.
CB_FINDSTRINGEXACT Znajduje pierwszy ciąg pola listy w polu kombi zgodnym z ciągiem określonym w parametrze lParam.
CB_GETCOMBOBOXINFO Pobiera informacje o określonym polu kombi.
CB_GETCOUNT Pobiera liczbę elementów w polu listy pola kombi.
CB_GETCUEBANNER Pobiera tekst baneru wskazówek wyświetlany w kontrolce edycji pola kombi. Wyślij tę wiadomość jawnie lub przy użyciu makra ComboBox_GetCueBannerText.
CB_GETCURSEL Aplikacja wysyła komunikat CB_GETCURSEL, aby pobrać indeks aktualnie wybranego elementu, jeśli istnieje, w polu listy pola kombi.
CB_GETDROPPEDCONTROLRECT Aplikacja wysyła komunikat CB_GETDROPPEDCONTROLRECT w celu pobrania współrzędnych ekranu pola kombi w stanie porzuconym.
CB_GETDROPPEDSTATE Określa, czy pole listy pola kombi jest porzucane.
CB_GETDROPPEDWIDTH Pobiera minimalną dozwoloną szerokość w pikselach pola listy pola kombi z stylem CBS_DROPDOWN lub CBS_DROPDOWNLIST.
CB_GETEDITSEL Pobiera pozycje znaków początkowych i końcowych bieżącego zaznaczenia w kontrolce edycji pola kombi.
CB_GETEXTENDEDUI Określa, czy pole kombi ma domyślny interfejs użytkownika, czy rozszerzony interfejs użytkownika.
CB_GETHORIZONTALEXTENT Pobiera szerokość w pikselach, którą można przewijać w poziomie (szerokość przewijaną). Ma to zastosowanie tylko wtedy, gdy pole listy ma poziomy pasek przewijania.
CB_GETITEMDATA Aplikacja wysyła komunikat CB_GETITEMDATA do pola kombi w celu pobrania wartości dostarczonej przez aplikację skojarzonej z określonym elementem w polu kombi.
CB_GETITEMHEIGHT Określa wysokość elementów listy lub pole wyboru w polu kombi.
CB_GETLBTEXT Pobiera ciąg z listy pola kombi.
CB_GETLBTEXTLEN Pobiera długość ciągu w postaci znaków na liście pola kombi.
CB_GETLOCALE Pobiera bieżące ustawienia regionalne pola kombi. Ustawienia regionalne służą do określania prawidłowej kolejności sortowania wyświetlanego tekstu dla pól kombi przy użyciu stylu CBS_SORT i tekstu dodanego przy użyciu komunikatu CB_ADDSTRING.
CB_GETMINVISIBLE Pobiera minimalną liczbę widocznych elementów na liście rozwijanej pola kombi.
CB_GETTOPINDEX Aplikacja wysyła komunikat CB_GETTOPINDEX w celu pobrania indeksu zera pierwszego widocznego elementu w polu listy pola kombi. Początkowo element z indeksem 0 znajduje się w górnej części pola listy, ale jeśli zawartość pola listy została przewinięta, inny element może znajdować się u góry.
CB_INITSTORAGE Aplikacja wysyła komunikat CB_INITSTORAGE przed dodaniem dużej liczby elementów do części pola listy pola kombi. Ten komunikat przydziela pamięć do przechowywania elementów pola listy.
CB_INSERTSTRING Wstawia dane ciągu lub elementu do listy pola kombi. W przeciwieństwie do komunikatu CB_ADDSTRING komunikat CB_INSERTSTRING nie powoduje sortowania listy z stylem CBS_SORT.
CB_LIMITTEXT Ogranicza długość tekstu, który użytkownik może wpisać w kontrolce edycji pola kombi.
CB_RESETCONTENT Usuwa wszystkie elementy z pola listy i edytuje kontrolkę pola kombi.
CB_SELECTSTRING Wyszukuje listę pola kombi dla elementu rozpoczynającego się od znaków w określonym ciągu. Jeśli zostanie znaleziony pasujący element, zostanie wybrany i skopiowany do kontrolki edycji.
CB_SETCUEBANNER Ustawia tekst baneru wskazówek wyświetlany dla kontrolki edycji pola kombi.
CB_SETCURSEL Aplikacja wysyła komunikat CB_SETCURSEL, aby wybrać ciąg na liście pola kombi. W razie potrzeby lista przewija ciąg do widoku. Tekst w kontrolce edycji pola kombi zmienia się w celu odzwierciedlenia nowego zaznaczenia, a wszystkie poprzednie zaznaczenie na liście zostaną usunięte.
CB_SETDROPPEDWIDTH Aplikacja wysyła komunikat CB_SETDROPPEDWIDTH, aby ustawić maksymalną dozwoloną szerokość w pikselach pola listy pola kombi z stylem CBS_DROPDOWN lub CBS_DROPDOWNLIST.
CB_SETEDITSEL Aplikacja wysyła komunikat CB_SETEDITSEL, aby wybrać znaki w kontrolce edycji pola kombi.
CB_SETEXTENDEDUI Aplikacja wysyła komunikat CB_SETEXTENDEDUI, aby wybrać domyślny interfejs użytkownika lub rozszerzony interfejs użytkownika dla pola kombi zawierającego styl CBS_DROPDOWN lub CBS_DROPDOWNLIST.
CB_SETHORIZONTALEXTENT Aplikacja wysyła komunikat CB_SETHORIZONTALEXTENT, aby ustawić szerokość w pikselach, za pomocą których pole listy można przewijać w poziomie (szerokość przewijania). Jeśli szerokość pola listy jest mniejsza niż ta wartość, poziomy pasek przewijania w poziomie przewija elementy w polu listy. Jeśli szerokość pola listy jest równa lub większa niż ta wartość, pasek przewijania poziomego jest ukryty lub, jeśli pole kombi ma styl CBS_DISABLENOSCROLL, wyłączone.
CB_SETITEMDATA Aplikacja wysyła komunikat CB_SETITEMDATA w celu ustawienia wartości skojarzonej z określonym elementem w polu kombi.
CB_SETITEMHEIGHT Aplikacja wysyła komunikat CB_SETITEMHEIGHT, aby ustawić wysokość elementów listy lub pole wyboru w polu kombi.
CB_SETLOCALE Aplikacja wysyła komunikat CB_SETLOCALE, aby ustawić bieżące ustawienia regionalne pola kombi. Jeśli pole kombi ma styl CBS_SORT, a ciągi są dodawane przy użyciu CB_ADDSTRING, ustawienia regionalne pola kombi wpływają na sposób sortowania elementów listy.
CB_SETMINVISIBLE Aplikacja wysyła komunikat CB_SETMINVISIBLE, aby ustawić minimalną liczbę widocznych elementów na liście rozwijanej pola kombi.
CB_SETTOPINDEX Aplikacja wysyła komunikat CB_SETTOPINDEX, aby upewnić się, że określony element jest widoczny w polu listy pola kombi. System przewija zawartość pola listy, tak aby określony element był wyświetlany w górnej części pola listy lub osiągnięto maksymalny zakres przewijania.
CB_SHOWDROPDOWN Aplikacja wysyła komunikat CB_SHOWDROPDOWN, aby pokazać lub ukryć pole listy pola kombi, które ma styl CBS_DROPDOWN lub CBS_DROPDOWNLIST.

Powiadomienia

Temat Treść
CBN_CLOSEUP Kod powiadomienia CBN_CLOSEUP jest wysyłany po zamknięciu pola listy pola kombi. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_DBLCLK Kod powiadomienia CBN_DBLCLK jest wysyłany, gdy użytkownik kliknie dwukrotnie ciąg w polu listy pola kombi. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_DROPDOWN Kod powiadomienia CBN_DROPDOWN jest wysyłany, gdy pole listy pola kombi zostanie wyświetlone. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_EDITCHANGE Kod powiadomienia CBN_EDITCHANGE jest wysyłany po wykonaniu przez użytkownika akcji, która mogła zmienić tekst w części kontrolki edycji pola kombi. W przeciwieństwie do kodu powiadomienia CBN_EDITUPDATE ten kod powiadomienia jest wysyłany po zaktualizowaniu ekranu przez system. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_EDITUPDATE Kod powiadomienia CBN_EDITUPDATE jest wysyłany, gdy część kontrolki edycji pola kombi będzie wyświetlać zmieniony tekst. Ten kod powiadomienia jest wysyłany po sformatowaniu tekstu przez kontrolkę, ale przed wyświetleniem tekstu. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_ERRSPACE Kod powiadomienia CBN_ERRSPACE jest wysyłany, gdy pole kombi nie może przydzielić wystarczającej ilości pamięci, aby spełnić określone żądanie. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_KILLFOCUS Kod powiadomienia CBN_KILLFOCUS jest wysyłany, gdy pole kombi utraci fokus klawiatury. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_SELCHANGE Kod powiadomienia CBN_SELCHANGE jest wysyłany, gdy użytkownik zmieni bieżące zaznaczenie w polu listy pola kombi. Użytkownik może zmienić wybór, klikając pole listy lub używając strzałek. Okno nadrzędne pola kombi odbiera to powiadomienie w postaci komunikatu WM_COMMAND z CBN_SELCHANGE w wysokiej kolejności wyrazu parametru wParam.
CBN_SELENDCANCEL Kod powiadomienia CBN_SELENDCANCEL jest wysyłany, gdy użytkownik wybierze element, ale następnie wybierze inną kontrolkę lub zamknie okno dialogowe. Oznacza to, że początkowy wybór użytkownika ma być ignorowany. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_SELENDOK Kod powiadomienia CBN_SELENDOK jest wysyłany, gdy użytkownik wybierze element listy lub wybierze element, a następnie zamknie listę. Wskazuje, że wybór użytkownika ma zostać przetworzony. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
CBN_SETFOCUS Kod powiadomienia CBN_SETFOCUS jest wysyłany, gdy pole kombi odbiera fokus klawiatury. Okno nadrzędne pola kombi odbiera ten kod powiadomienia za pośrednictwem komunikatu WM_COMMAND.
WM_COMPAREITEM System wysyła komunikat WM_COMPAREITEM w celu określenia względnej pozycji nowego elementu na posortowanej liście pola kombi lub pola listy narysowanej przez właściciela. Za każdym razem, gdy aplikacja dodaje nowy element, system wysyła ten komunikat do właściciela pola kombi lub pola listy utworzonego przy użyciu stylu CBS_SORT lub LBS_SORT.
WM_DRAWITEM Komunikat WM_DRAWITEM jest wysyłany do okna nadrzędnego przycisku rysowanego przez właściciela, pola kombi, pola listy lub menu, gdy zmieni się aspekt wizualny przycisku, pola kombi, pola listy lub menu.
WM_MEASUREITEM Komunikat WM_MEASUREITEM jest wysyłany do okna właściciela pola kombi, pola listy, kontrolki widoku listy lub elementu menu po utworzeniu kontrolki lub menu.

Struktur

Temat Treść
COMBOBOXINFO Zawiera informacje o stanie pola kombi.
COMPAREITEMSTRUCT Dostarcza identyfikatory i dane dostarczone przez aplikację dla dwóch elementów w posortowanym, rysowanym przez właściciela polu listy lub polu kombi.
DRAWITEMSTRUCT Zawiera niezbędne informacje w oknie właściciela, aby określić sposób malowania kontrolki lub elementu menu rysowanego przez właściciela. Okno właściciela kontrolki lub elementu menu narysowanego przez właściciela otrzymuje wskaźnik do tej struktury jako parametr lParam komunikatu WM_DRAWITEM.
MEASUREITEMSTRUCT Informuje system wymiarów kontrolki lub elementu menu rysowanego przez właściciela. Dzięki temu system może prawidłowo przetwarzać interakcję użytkownika z kontrolką.

Stałe

Temat Treść
style pól kombi Aby utworzyć pole kombi przy użyciu CreateWindow lub funkcji CreateWindowEx, określ klasę COMBOBOX, odpowiednie stałe stylu okna i kombinację następujących stylów pola kombi.