




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、它是來響應(yīng)你在組合框里選擇的事件函數(shù)。void CEXERCISE1Dlg:OnSelchangeCombo1( int bnt,receivenum;CString anyview;bnt = m_list.GetCurSel(;if (bnt != CB_ERRm_list.GetLBText(bnt,m_test;receivenum = m_list.GetItemData(bnt;anyview.Format("%d",receivenum;m_test2 = anyview;UpdateData(FALSE;elseMessageBox("您未選中任何
2、一項!"3、注意的是:m_list為組合框的一個成員變量,類型為:CComoboBox. m_test和m_test2為兩個編輯框的成員變量,類型為:CString。消息觸發(fā)事件ON_CBN_SELENDOK當(dāng)應(yīng)用程式接收 CBN_SELCHANGE 通知訊息時,尚未更新下拉式方塊的編輯/靜態(tài)部份。若要取得新的選取範(fàn)圍,傳送 CB_GETLBTEXT 訊息至下拉式方塊控制項。這封郵件會放在新的選取範(fàn)圍的文字中指定的緩衝區(qū)。下列是簡短的程式碼片段: . /* Other code. */ case CBN_SELCHANGE:hCombo = LOWORD(lParam; /* Get
3、 combo box window handle. */ /* Get index of current selection and the text of that selection. */ index = SendMessage(hCombo, CB_GETCURSEL, (WORD0, 0L;SendMessage(hCombo, CB_GETLBTEXT, (WORDindex, (LONGbuffer;break;. /* Other code. */ Win32程序中使用Combo box控件 分類: VC/MFC 2012-02-17 11:36 91人閱讀 評論(0 收藏 舉
4、報 第一次使用win32寫代碼,將代碼中對Combo box 控件的使用做個總結(jié):1. 使用SendMessage向窗口發(fā)送消息,對Combo Box進(jìn)行基本操作如添加數(shù)據(jù),刪除數(shù)據(jù),得到所選Item的值等,請參考: 2. 使Combo box控件可見或不可見,需使用EnablkeWindow函數(shù): EnableWindow(hCombo,TRUE; EnableWindow(hCombo,FALSE;3. 響應(yīng)Combo box的Notificatio
5、n message,比如選擇Combo box中一個不同于當(dāng)前的Item時,會響應(yīng)CBN_SELCHANGE消息。MSDN的解釋:CBN_SELCHANGE NotificationThe CBN_SELCHANGE notification message is sent when the user changes the current selection in the list box of a combo box. The user can change the selection by clicking in the list box or by using th
6、e arrow keys. The parent window of the combo box receives this notification in the form of aWM_COMMAND message with CBN_SELCHANGE in the high-order word of the wParam parameter.SyntaxCBN_SELCHANGEWPARAM wParamLPARAM lParam;ParameterswParam The low-order word specifies the co
7、ntrol identifier of the combo box. The high-order word specifies the notification message.lParam Handle to the combo box. Process Message Code:LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam int wmId, wmEvent;&
8、#160; switch (message case WM_COMMAND:/ low-order word specifies the control identifier of the combo box.
9、160; wmId = LOWORD(wParam; /high-order word specifies the notification message. wmEvent = HIWORD(wParam;
10、60; / 分析菜單選擇: switch (wmEvent &
11、#160; case CBN_SELCHANGE: if (wmId=IDC_COMBO_MODE /判斷選中的是哪個Combo box
12、60; . . . . . .
13、160; break;
14、 break; case WM_DESTROY: PostQuitMessage(0; &
15、#160; break; /Although the dialog box procedure is similar to a window procedure, /it must not call the DefWindowProc function to proce
16、ss unwanted messages / default: / return DefWindowProc(hWnd, message, wParam, lParam;return 0;/ 在組合框中添加項SendMessage(hwndComboBox, CB_RESETCONTENT, 0, 0 ;SendMessage(hwndComboBox, CB_ADDSTRING, 0, (LPARAMT
17、EXT("四川"SendMessage(hwndComboBox, CB_ADDSTRING, 0, (LPARAMTEXT("廣東"SendMessage(hwndComboBox, CB_ADDSTRING, 0, (LPARAMTEXT("河南"/設(shè)置組合框和列表框中默認(rèn)選中的項SendMessage(hwndComboBox, CB_SETCURSEL, 0, 0; SendMessage(hwndList, LB_SETCURSEL, 0, 0;SetFocus(hwndList;/ 改變靜態(tài)文本控件的顯示內(nèi)容SendMes
18、sage(hwndStatic, WM_SETTEXT, 0, (LPARAMintroduce0;return 0 ;case WM_COMMAND: / 處理控件通知消息switch(LOWORD(wParamcase IDC_MYCOMBOX: / 組合框控件的通知消息switch(HIWORD(wParamcase CBN_SELCHANGE: / 選中的項已經(jīng)改變/ 獲得組合框中選中的項的索引,并重新設(shè)置列表框中的項cbIndex = SendMessage(hwndComboBox, CB_GETCURSEL, 0, 0;SendMessage(hwndList, LB_RESET
19、CONTENT, 0, 0;if(cbIndex < 3 / 對于組合框內(nèi)原有的前三項for(i = 0 ; i < NUMcbIndex ; i+SendMessage(hwndList, LB_ADDSTRING, 0, (LPARAMplacecbIndexi; else / 對于后來用戶添加的項SendMessage(hwndList, LB_RESETCONTENT, 0, 0;SendMessage(hwndList, LB_ADDSTRING, 0,(LPARAMTEXT("目前尚未完成"/ 重新設(shè)置靜態(tài)文本框SendMessage(hwndSta
20、tic, WM_SETTEXT, 0, (LPARAMTEXT(" "/ 改變靜態(tài)文本控件的顯示內(nèi)容SendMessage(hwndList, LB_SETCURSEL, 0, 0;SendMessage(hwndStatic, WM_SETTEXT, 0, (LPARAMintroducecbIndex;break;case CBN_EDITCHANGE : / 用戶改變了組合框中的編輯控件的內(nèi)容bChanged = TRUE ; / 設(shè)置改動標(biāo)識break; break ;case IDC_MYLIST: / 列表框控件通知消息switch(HIWORD(wParamc
21、ase LBN_DBLCLK: / 雙擊列表框中的項/ 獲取雙擊的列表項的文本lbIndex = SendMessage(hwndList, LB_GETCURSEL, 0, 0;SendMessage(hwndList, LB_GETTEXT, lbIndex, (LPARAMtemp;wsprintf(buffer, "%s 是一個好地方", temp;MessageBox(hwnd, buffer, "歡迎光臨", MB_OK;break;break;case IDC_MYBUTTON: / 按鈕控件通知消息SendMessage(hwnd, WM_CLOSE, wParam, lParam;break;case IDC_ADDBUTTON: / 向組合框中添加新項if(bCha
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《汽車貸款提前還款合同模板》
- 倉儲設(shè)施安全檢查與物業(yè)管理服務(wù)合同
- 企業(yè)債務(wù)財產(chǎn)保全法律文書解除合同
- 企事業(yè)單位內(nèi)部停車位銷售及使用管理合同范本
- 資產(chǎn)重組財務(wù)擔(dān)保合同會計處理指南
- 老人健康講座課件
- 美術(shù)課件制作介紹
- 美術(shù)色彩知識課件
- 安全生產(chǎn)約談會
- 消防安全形勢分析會議記錄
- DB45∕T 1098-2024 橡膠瀝青路面施工技術(shù)規(guī)范
- 2025年沈陽水務(wù)集團(tuán)招聘筆試沖刺題2025
- 《蠶絲》教學(xué)課件
- 中央軍校面試題庫及答案
- 2025年廣東省高考地理試卷真題(含答案)
- 江西省金控科技產(chǎn)業(yè)集團(tuán)有限公司招聘筆試題庫2025
- Unit 1 Happy Holiday 第4課時(Section B 1a-1d) 2025-2026學(xué)年人教版英語八年級下冊
- 2025年連云港市中考語文試卷真題(含標(biāo)準(zhǔn)答案及解析)
- 2025-2030年中國期貨行業(yè)市場深度調(diào)研及競爭格局與投資策略研究報告
- 2025-2030年中國農(nóng)業(yè)科技行業(yè)市場深度調(diào)研及前景趨勢與投資研究報告
- 2025至2030中國家用血壓計行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
評論
0/150
提交評論