求真百科歡迎當事人提供第一手真實資料,洗刷冤屈,終結網路霸凌。

組合框檢視原始碼討論檢視歷史

事實揭露 揭密真相
前往: 導覽搜尋
  組合框

組合框的風格取值定義了組合框的具體屬性,包括是否自動排序,是否有滾動條。

簡介

組合框的風格,取值如表所示。CBS_AUTOHSCROLL 當用戶在編輯區域鍵入字符時,列表框自動滾動,使當前項的名稱與鍵入的字符排序相同CBS_DROPDOWN 創建一個下拉式組合框CBS_DROPDOWNLIST 創建一個下拉式列表框CBS_HASSTRINGS 讓應用程序能夠使用GetText取得組合框裡的文本CBS_OEMCONVERT 把輸入的文本將從ANSI碼轉換成OEM碼,然後又轉換成ANSI碼;這樣的目的是保證函數AnsiToOem的正確調用CBS_OWNERDRAWFIXED 父窗口負責重畫組合框裡的各項,並使各項的高度一致CBS_OWNERDRAWVARIABLE 父窗口負責重畫組合框裡的各項,各項的高度不一致CBS_SIMPLE 組合框顯示所有的項,當前的選項在編輯區域中顯示CBS_SORT 自動排序CBS_DISABLENOSCROLL 組合框有垂直滾動條,當組合框的項不足時,滾動條激活;沒有該風格,則滾動條隱藏CBS_NOINTEGRALHEIGHT 指定組合框的大小由程序精確控制,通常組合框的大小由組合框裡項的數目決定創建一個組合框只需把CreateWindow的第一個參數設置為ComboBox,然後取表中的值即可。組合框創建後,需要初始化,即通過向組合框發送CB_ADDSTRING增加最初的項,這類似於列表框。如果沒有定義CBS_SORT風格,新增的項將被增加到組合框的末尾。應用程序的父窗口主要通過 WM_COMMAND消息與組合框通信,應用程序可以用CB_FINDSTRINGEXACT搜索指定的項,還可以發送CB_DELETESTRING刪除指定的項,當需要刪除所有的項時,發送消息CB_RESETCONTENT即可。組合框的編輯區域用來顯示當前選中的項或者編輯組合框裡沒有的項。可以用CB_LIMITTEXT來限制輸入文本的大小;為了獲得編輯區域的文本,可發送CB_GETLBTEXT或者WM_GETTEXT消息,這樣就把文本複製到指定的字符串中,當需要設置編輯區域的文本時,只需要發送WM_SETTEXT消息。Windows API為組合框提供了文件顯示和搜索的功能,它們主要通過函數DlgDirListComboBox和DlgDirSelectComboBox來實現。

評價

本節的應用程序中將用到這些函數,並把文件的內容顯示在窗口裡。

  • CB_ADDSTRlNG 增加一項
  • CB_DELETESTRING 刪除指定的項
  • CB_DIR 發送搜索目錄的消息
  • CB_FINDSTRING 搜索指定的項
  • CB_FINDSTRINGEXACT 精確搜索指定的項
  • CB_GETCOUNT 得到組合框中項的數目
  • CB_GETCURSEL 得到當前選中項的序號
  • CB_GETEDITSEL 得到編輯區域選中的文本
  • CB_GETLBTEXT 得到編輯區域的文本
  • CB_GETLBTEXTLEN 得到編輯區域中文本的長度
  • CB_LIMITTEXT 發送限制編輯區域文本的消息
  • CB_RESETCONTENT 刪除所有的項。[1]

參考文獻

  1. 組合框搜狗