Kotak Kombo (Kontrol Windows)

Bagian ini berisi informasi tentang elemen pemrograman yang digunakan dengan kotak kombo. Kotak kombo adalah jenis kontrol unik, yang ditentukan oleh kelas COMBOBOX, yang menggabungkan banyak fungsionalitas kotak daftar dan kontrol edit.

Gambaran Umum

Topik Konten
Tentang Kotak Kombo Bagian ini membahas berbagai jenis kotak kombo.
Fitur Kotak Kombo Dokumen ini membahas fitur kotak kombo.
Menggunakan Kotak Kombo Contoh kode di bagian ini menunjukkan cara melakukan tugas yang terkait dengan kotak kombo.

Fungsi

Topik Konten
DlgDirListComboBox Mengganti konten kotak kombo dengan nama subdirektori dan file dalam direktori tertentu. Anda dapat memfilter daftar nama dengan menentukan sekumpulan atribut file. Daftar nama dapat mencakup huruf kandar yang dipetakan.
DlgDirSelectComboBoxEx Mengambil pilihan saat ini dari kotak kombo yang diisi dengan menggunakan fungsi DlgDirListComboBox. Pilihan ditafsirkan sebagai huruf kandar, file, atau nama direktori.
GetComboBoxInfo Mengambil informasi tentang kotak kombo yang ditentukan.

Makro

Topik Konten
ComboBox_AddItemData Menambahkan data item ke daftar dalam kotak kombo di lokasi yang ditentukan. Anda dapat menggunakan makro ini atau mengirim pesan CB_ADDSTRING secara eksplisit.
ComboBox_AddString Menambahkan string ke daftar dalam kotak kombo. Jika kotak kombo tidak memiliki gaya CBS_SORT , string ditambahkan ke akhir daftar. Jika tidak, string disisipkan ke dalam daftar dan daftar diurutkan. Anda dapat menggunakan makro ini atau mengirim pesan CB_ADDSTRING secara eksplisit.
ComboBox_DeleteString Menghapus item di lokasi yang ditentukan dalam daftar dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_DELETESTRING secara eksplisit.
ComboBox_Dir Menambahkan nama ke daftar yang ditampilkan oleh kotak kombo. Makro menambahkan nama direktori dan file yang cocok dengan string dan set atribut file tertentu. Ini juga dapat menambahkan huruf drive yang dipetakan ke daftar dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_DIR secara eksplisit.
ComboBox_Enable Mengaktifkan atau menonaktifkan kontrol kotak kombo.
ComboBox_FindItemData Menemukan item pertama dalam daftar kotak kombo yang memiliki data item yang ditentukan. Anda dapat menggunakan makro ini atau mengirim pesan CB_FINDSTRING secara eksplisit.
ComboBox_FindString Menemukan string pertama dalam daftar kotak kombo yang dimulai dengan string yang ditentukan. Anda dapat menggunakan makro ini atau mengirim pesan CB_FINDSTRING secara eksplisit.
ComboBox_FindStringExact Menemukan string pertama dalam daftar kotak kombo yang sama persis dengan string yang ditentukan, kecuali bahwa pencarian tidak peka huruf besar/kecil. Anda dapat menggunakan makro ini atau mengirim pesan CB_FINDSTRINGEXACT secara eksplisit.
ComboBox_GetCount Mendapatkan jumlah item dalam kotak daftar kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETCOUNT secara eksplisit.
ComboBox_GetCueBannerText Mendapatkan teks banner isian ditampilkan dalam kontrol edit kotak kombo. Gunakan makro ini atau kirim pesan CB_GETCUEBANNER secara eksplisit.
ComboBox_GetCurSel Mendapatkan indeks item yang saat ini dipilih dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETCURSEL secara eksplisit.
ComboBox_GetDroppedControlRect Mengambil koordinat layar kotak kombo dalam status turun bawahnya. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETDROPPEDCONTROLRECT secara eksplisit.
ComboBox_GetDroppedState Memastikan apakah daftar drop dalam kontrol kotak kombo terlihat. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETDROPPEDSTATE secara eksplisit.
ComboBox_GetExtendedUI Memastikan apakah kotak kombo menggunakan antarmuka pengguna (UI) default atau antarmuka pengguna yang diperluas. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETEXTENDEDUI secara eksplisit.
ComboBox_GetItemData Mendapatkan nilai yang ditentukan aplikasi yang terkait dengan item daftar yang ditentukan dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETITEMDATA secara eksplisit.
ComboBox_GetItemHeight Mengambil tinggi item daftar dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETITEMHEIGHT secara eksplisit.
ComboBox_GetLBText Mendapatkan string dari daftar dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETLBTEXT secara eksplisit.
ComboBox_GetLBTextLen Mendapatkan panjang string dalam daftar dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_GETLBTEXTLEN secara eksplisit.
ComboBox_GetMinVisible Mendapatkan jumlah minimum item yang terlihat dalam daftar drop-down kotak kombo.
ComboBox_GetText Mengambil teks dari kontrol kotak kombo.
ComboBox_GetTextLength Mendapatkan jumlah karakter dalam teks kotak kombo.
ComboBox_InsertItemData Menyisipkan data item dalam daftar dalam kotak kombo di lokasi yang ditentukan. Anda dapat menggunakan makro ini atau mengirim pesan CB_INSERTSTRING secara eksplisit.
ComboBox_InsertString Menambahkan string ke daftar dalam kotak kombo di lokasi yang ditentukan. Anda dapat menggunakan makro ini atau mengirim pesan CB_INSERTSTRING secara eksplisit.
ComboBox_LimitText Membatasi panjang teks yang dapat diketik pengguna ke dalam kontrol edit kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_LIMITTEXT secara eksplisit.
ComboBox_ResetContent Menghapus semua item dari kotak daftar dan mengedit kontrol kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_RESETCONTENT secara eksplisit.
ComboBox_SelectItemData Mencari daftar dalam kotak kombo untuk item yang memiliki data item yang ditentukan. Jika item yang cocok ditemukan, item dipilih. Anda dapat menggunakan makro ini atau mengirim pesan CB_SELECTSTRING secara eksplisit.
ComboBox_SelectString Mencari daftar dalam kotak kombo untuk item yang dimulai dengan karakter dalam string tertentu. Jika item yang cocok ditemukan, item dipilih. Anda dapat menggunakan makro ini atau mengirim pesan CB_SELECTSTRING secara eksplisit.
ComboBox_SetCueBannerText Mengatur teks banner isian yang ditampilkan untuk kontrol edit kotak kombo.
ComboBox_SetCurSel Menyetel item yang saat ini dipilih dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_SETCURSEL secara eksplisit.
ComboBox_SetExtendedUI Memilih antarmuka pengguna (UI) default atau antarmuka pengguna yang diperluas untuk kotak kombo yang memiliki gaya CBS_DROPDOWN atau CBS_DROPDOWNLIST. Anda dapat menggunakan makro ini atau mengirim pesan CB_SETEXTENDEDUI secara eksplisit.
ComboBox_SetItemData Mengatur nilai yang ditentukan aplikasi yang terkait dengan item daftar yang ditentukan dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_SETITEMDATA secara eksplisit.
ComboBox_SetItemHeight Mengatur tinggi item daftar atau bidang pilihan dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_SETITEMHEIGHT secara eksplisit.
ComboBox_SetMinVisible Mengatur jumlah minimum item yang terlihat dalam daftar drop-down kotak kombo.
ComboBox_SetText Mengatur teks kotak kombo.
ComboBox_ShowDropdown Memperlihatkan atau menyembunyikan daftar dalam kotak kombo. Anda dapat menggunakan makro ini atau mengirim pesan CB_SHOWDROPDOWN secara eksplisit.

Pesan

Topik Konten
CB_ADDSTRING Menambahkan string ke kotak daftar kotak kombo. Jika kotak kombo tidak memiliki gaya CBS_SORT , string ditambahkan ke akhir daftar. Jika tidak, string disisipkan ke dalam daftar, dan daftar diurutkan.
CB_DELETESTRING Menghapus string dalam kotak daftar kotak kombo.
CB_DIR Menambahkan nama ke daftar yang ditampilkan oleh kotak kombo. Pesan menambahkan nama direktori dan file yang cocok dengan string dan set atribut file tertentu. CB_DIR juga dapat menambahkan huruf kandar yang dipetakan ke daftar.
CB_FINDSTRING Mencari kotak daftar kotak kombo untuk item yang dimulai dengan karakter dalam string tertentu.
CB_FINDSTRINGEXACT Menemukan string kotak daftar pertama dalam kotak kombo yang cocok dengan string yang ditentukan dalam parameter lParam .
CB_GETCOMBOBOXINFO Mendapatkan informasi tentang kotak kombo yang ditentukan.
CB_GETCOUNT Mendapatkan jumlah item dalam kotak daftar kotak kombo.
CB_GETCUEBANNER Mendapatkan teks banner isian ditampilkan dalam kontrol edit kotak kombo. Kirim pesan ini secara eksplisit atau dengan menggunakan makro ComboBox_GetCueBannerText.
CB_GETCURSEL Aplikasi mengirim pesan CB_GETCURSEL untuk mengambil indeks item yang saat ini dipilih, jika ada, dalam kotak daftar kotak kombo.
CB_GETDROPPEDCONTROLRECT Aplikasi mengirim pesan CB_GETDROPPEDCONTROLRECT untuk mengambil koordinat layar kotak kombo dalam status turun bawahnya.
CB_GETDROPPEDSTATE Menentukan apakah kotak daftar kotak kombo dijatuhkan ke bawah.
CB_GETDROPPEDWIDTH Mendapatkan lebar minimum yang diizinkan, dalam piksel, dari kotak daftar kotak kombo dengan gaya CBS_DROPDOWN atau CBS_DROPDOWNLIST.
CB_GETEDITSEL Mendapatkan posisi karakter awal dan akhir dari pilihan saat ini dalam kontrol edit kotak kombo.
CB_GETEXTENDEDUI Menentukan apakah kotak kombo memiliki antarmuka pengguna default atau antarmuka pengguna yang diperluas.
CB_GETHORIZONTALEXTENT Mendapatkan lebar, dalam piksel, bahwa kotak daftar dapat digulir secara horizontal (lebar yang dapat digulir). Ini hanya berlaku jika kotak daftar memiliki bilah gulir horizontal.
CB_GETITEMDATA Aplikasi mengirim pesan CB_GETITEMDATA ke kotak kombo untuk mengambil nilai yang disediakan aplikasi yang terkait dengan item yang ditentukan dalam kotak kombo.
CB_GETITEMHEIGHT Menentukan tinggi item daftar atau bidang pilihan dalam kotak kombo.
CB_GETLBTEXT Mendapatkan string dari daftar kotak kombo.
CB_GETLBTEXTLEN Mendapatkan panjang, dalam karakter, dari string dalam daftar kotak kombo.
CB_GETLOCALE Mendapatkan lokal kotak kombo saat ini. Lokal digunakan untuk menentukan urutan pengurutan yang benar dari teks yang ditampilkan untuk kotak kombo dengan gaya CBS_SORT dan teks yang ditambahkan dengan menggunakan pesan CB_ADDSTRING.
CB_GETMINVISIBLE Mendapatkan jumlah minimum item yang terlihat dalam daftar drop-down kotak kombo.
CB_GETTOPINDEX Aplikasi mengirim pesan CB_GETTOPINDEX untuk mengambil indeks berbasis nol dari item pertama yang terlihat dalam bagian kotak daftar dari kotak kombo. Awalnya, item dengan indeks 0 berada di bagian atas kotak daftar, tetapi jika konten kotak daftar telah digulir, item lain mungkin berada di bagian atas.
CB_INITSTORAGE Aplikasi mengirim pesan CB_INITSTORAGE sebelum menambahkan sejumlah besar item ke bagian kotak daftar kotak kombo. Pesan ini mengalokasikan memori untuk menyimpan item kotak daftar.
CB_INSERTSTRING Menyisipkan data string atau item ke dalam daftar kotak kombo. Tidak seperti pesan CB_ADDSTRING, pesan CB_INSERTSTRING tidak menyebabkan daftar dengan gaya CBS_SORT diurutkan.
CB_LIMITTEXT Membatasi panjang teks yang dapat diketik pengguna ke dalam kontrol edit kotak kombo.
CB_RESETCONTENT Menghapus semua item dari kotak daftar dan mengedit kontrol kotak kombo.
CB_SELECTSTRING Mencari daftar kotak kombo untuk item yang dimulai dengan karakter dalam string tertentu. Jika item yang cocok ditemukan, item dipilih dan disalin ke kontrol edit.
CB_SETCUEBANNER Mengatur teks banner isian yang ditampilkan untuk kontrol edit kotak kombo.
CB_SETCURSEL Aplikasi mengirim pesan CB_SETCURSEL untuk memilih string dalam daftar kotak kombo. Jika perlu, daftar menggulir string ke tampilan. Teks dalam kontrol edit kotak kombo berubah untuk mencerminkan pilihan baru, dan pilihan sebelumnya dalam daftar dihapus.
CB_SETDROPPEDWIDTH Aplikasi mengirim pesan CB_SETDROPPEDWIDTH untuk mengatur lebar maksimum yang diizinkan, dalam piksel, dari kotak daftar kotak kombo dengan gaya CBS_DROPDOWN atau CBS_DROPDOWNLIST.
CB_SETEDITSEL Aplikasi mengirim pesan CB_SETEDITSEL untuk memilih karakter dalam kontrol edit kotak kombo.
CB_SETEXTENDEDUI Aplikasi mengirim pesan CB_SETEXTENDEDUI untuk memilih UI default atau UI yang diperluas untuk kotak kombo yang memiliki gaya CBS_DROPDOWN atau CBS_DROPDOWNLIST.
CB_SETHORIZONTALEXTENT Aplikasi mengirim pesan CB_SETHORIZONTALEXTENT untuk mengatur lebar, dalam piksel, di mana kotak daftar dapat digulir secara horizontal (lebar yang dapat digulir). Jika lebar kotak daftar lebih kecil dari nilai ini, bilah gulir horizontal menggulir item secara horizontal dalam kotak daftar. Jika lebar kotak daftar sama dengan atau lebih besar dari nilai ini, bilah gulir horizontal disembunyikan atau, jika kotak kombo memiliki gaya CBS_DISABLENOSCROLL , dinonaktifkan.
CB_SETITEMDATA Aplikasi mengirim pesan CB_SETITEMDATA untuk mengatur nilai yang terkait dengan item yang ditentukan dalam kotak kombo.
CB_SETITEMHEIGHT Aplikasi mengirim pesan CB_SETITEMHEIGHT untuk mengatur tinggi item daftar atau bidang pilihan dalam kotak kombo.
CB_SETLOCALE Aplikasi mengirim pesan CB_SETLOCALE untuk mengatur lokal kotak kombo saat ini. Jika kotak kombo memiliki gaya CBS_SORT dan string ditambahkan menggunakan CB_ADDSTRING, lokal kotak kombo memengaruhi cara item daftar diurutkan.
CB_SETMINVISIBLE Aplikasi mengirim pesan CB_SETMINVISIBLE untuk mengatur jumlah minimum item yang terlihat dalam daftar drop-down kotak kombo.
CB_SETTOPINDEX Aplikasi mengirim pesan CB_SETTOPINDEX untuk memastikan bahwa item tertentu terlihat dalam kotak daftar kotak kombo. Sistem menggulir konten kotak daftar sehingga item yang ditentukan muncul di bagian atas kotak daftar atau rentang gulir maksimum telah tercapai.
CB_SHOWDROPDOWN Aplikasi mengirim pesan CB_SHOWDROPDOWN untuk memperlihatkan atau menyembunyikan kotak daftar kotak kombo yang memiliki gaya CBS_DROPDOWN atau CBS_DROPDOWNLIST.

Notifications

Topik Konten
CBN_CLOSEUP Kode pemberitahuan CBN_CLOSEUP dikirim saat kotak daftar kotak kombo telah ditutup. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_DBLCLK Kode pemberitahuan CBN_DBLCLK dikirim saat pengguna mengklik dua kali string dalam kotak daftar kotak kombo. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_DROPDOWN Kode pemberitahuan CBN_DROPDOWN dikirim saat kotak daftar kotak kombo akan dibuat terlihat. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_EDITCHANGE Kode pemberitahuan CBN_EDITCHANGE dikirim setelah pengguna mengambil tindakan yang mungkin telah mengubah teks dalam bagian kontrol edit kotak kombo. Tidak seperti kode pemberitahuan CBN_EDITUPDATE, kode pemberitahuan ini dikirim setelah sistem memperbarui layar. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_EDITUPDATE Kode pemberitahuan CBN_EDITUPDATE dikirim saat bagian kontrol edit kotak kombo akan menampilkan teks yang diubah. Kode pemberitahuan ini dikirim setelah kontrol memformat teks, tetapi sebelum menampilkan teks. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_ERRSPACE Kode pemberitahuan CBN_ERRSPACE dikirim ketika kotak kombo tidak dapat mengalokasikan cukup memori untuk memenuhi permintaan tertentu. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_KILLFOCUS Kode pemberitahuan CBN_KILLFOCUS dikirim saat kotak kombo kehilangan fokus keyboard. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_SELCHANGE Kode pemberitahuan CBN_SELCHANGE dikirim saat pengguna mengubah pilihan saat ini dalam kotak daftar kotak kombo. Pengguna dapat mengubah pilihan dengan mengklik dalam kotak daftar atau dengan menggunakan tombol panah. Jendela induk kotak kombo menerima pemberitahuan ini dalam bentuk pesan WM_COMMAND dengan CBN_SELCHANGE dalam kata berurutan tinggi dari parameter wParam.
CBN_SELENDCANCEL Kode pemberitahuan CBN_SELENDCANCEL dikirim saat pengguna memilih item, tetapi kemudian memilih kontrol lain atau menutup kotak dialog. Ini menunjukkan pilihan awal pengguna akan diabaikan. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_SELENDOK Kode pemberitahuan CBN_SELENDOK dikirim saat pengguna memilih item daftar, atau memilih item lalu menutup daftar. Ini menunjukkan bahwa pilihan pengguna akan diproses. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
CBN_SETFOCUS Kode pemberitahuan CBN_SETFOCUS dikirim saat kotak kombo menerima fokus keyboard. Jendela induk kotak kombo menerima kode pemberitahuan ini melalui pesan WM_COMMAND.
WM_COMPAREITEM Sistem mengirim pesan WM_COMPAREITEM untuk menentukan posisi relatif item baru dalam daftar kotak kombo atau daftar yang digambar pemilik. Setiap kali aplikasi menambahkan item baru, sistem mengirim pesan ini ke pemilik kotak kombo atau kotak daftar yang dibuat dengan gaya CBS_SORT atau LBS_SORT.
WM_DRAWITEM Pesan WM_DRAWITEM dikirim ke jendela induk tombol, kotak kombo, kotak daftar, atau menu yang digambar pemilik saat aspek visual tombol, kotak kombo, kotak daftar, atau menu telah berubah.
WM_MEASUREITEM Pesan WM_MEASUREITEM dikirim ke jendela pemilik kotak kombo, kotak daftar, kontrol tampilan daftar, atau item menu saat kontrol atau menu dibuat.

Struktur

Topik Konten
COMBOBOXINFO Berisi informasi status kotak kombo.
COMPAREITEMSTRUCT Menyediakan pengidentifikasi dan data yang disediakan aplikasi untuk dua item dalam kotak daftar atau kotak kombo yang diurutkan dan digambar pemilik.
DRAWITEMSTRUCT Menyediakan informasi yang diperlukan jendela pemilik untuk menentukan cara melukis kontrol atau item menu yang digambar pemilik. Jendela pemilik kontrol atau item menu yang digambar pemilik menerima penunjuk ke struktur ini sebagai parameter lParam dari pesan WM_DRAWITEM .
MEASUREITEMSTRUCT Menginformasikan sistem dimensi kontrol atau item menu yang digambar pemilik. Ini memungkinkan sistem untuk memproses interaksi pengguna dengan kontrol dengan benar.

Konstanta

Topik Konten
Gaya Kotak Kombo Untuk membuat kotak kombo menggunakan fungsi CreateWindow atau CreateWindowEx, tentukan kelas COMBOBOX, konstanta gaya jendela yang sesuai, dan kombinasi gaya kotak kombo berikut.