《实用VC编程之玩转控件》第6课:ComboBox下拉框控件
本文轉載自:VC驛站
https://www.cctry.com/thread-297426-1-1.html
1、向下拉框控件添加數據:
a、通過Data屬性添加,以分號間隔;
b、向下拉框的結尾添加數據:
m_ComboBox.AddString(_T("1"));
m_ComboBox.AddString(_T("2"));
m_ComboBox.AddString(_T("10"));
m_ComboBox.AddString(_T("20"));
添加完成后,大家發現點什么問題沒有?數據的順序并不是我們添加時候的順序,不是逐一往尾部添加嗎,為什么順序不對呢?
答案是:調整下控件的 Sort 自動排序屬性就可以了。
c、自定義位置插入數據:
m_ComboBox.InsertString(0, _T("1"));
m_ComboBox.InsertString(1, _T("2"));
m_ComboBox.InsertString(2, _T("10"));
m_ComboBox.InsertString(1, _T("20"));
這種插入方式不受 Sort 屬性的影響,但是需要提供插入的索引位置。
2、從下拉框刪除數據:
m_ComboBox.DeleteString(0);? ? //刪除指定索引的數據
m_ComboBox.ResetContent();? ? //刪除全部數據???????
3、設置下拉框選中某條數據:
m_ComboBox.SetCurSel(1);???????
參數傳遞要設置的索引序號,如果不想選中任何一條,那么就傳遞 -1.
4、獲得下拉框當前選中的是哪條數據:
int idx = m_ComboBox.GetCurSel();
返回以0開始的選中的數據索引,如果沒選中任何一條數據,則返回 -1.
5、獲得指定數據的字符串內容:
TCHAR szText[100] = { 0 };
m_ComboBox.GetLBText(idx, szText);
這樣就知道選中的是哪個了,不然告訴你 0,1,2,你怎么知道是什么!
6、下拉控件的類型:
Dropdown:可以從下拉列表中選擇一項,也可以自己輸入;
Drop List:只能從下拉列表中選擇一項,不能修改。
7、控制下拉列表的高度:
a、控件模版中,點擊一下 ComboBox 的下拉箭頭,此時出現的調整框就是 ComboBox 的下拉框的高度;
b、控件屬性中有個 No Integral Height 選項,表示最大高度為設計長度,如果實際內容比設計長度多,就出現滾動條,少就以實際長度顯示。
可以將該選項設置為默認的FALSE,即表示最大高度不是設計的高度,而是根據實際內容的高度來決定。
8、下拉框選擇改變事件:
響應 CBN_SELCHANGE 事件,在其響應函數中判斷當前選中的是哪個!
9、開源控件類:
https://www.codeproject.com/KB/combobox/
https://www.codeproject.com/Articles/489189/Group-Combo-Box
?
https://www.codeproject.com/Articles/58/CheckComboBox-Control
?
https://www.codeproject.com/Articles/229/Color-Picker-Combo-Box
?
https://www.codeproject.com/Articles/81/A-Multi-Column-ComboBox
?
https://www.codeproject.com/Arti ... truct-in-a-Combobox
?
10、小作業:
從開源控件類中選一個,自己實踐下試試!
具體操作細節見視頻教程的演示和講解!
第6課免費試看,下載地址:
https://www.cctry.com/thread-297426-1-1.html
總結
以上是生活随笔為你收集整理的《实用VC编程之玩转控件》第6课:ComboBox下拉框控件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue2 自定义card分页
- 下一篇: c语言职工工资信息表,C语言职工工资理系