版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,第五講Windows界面編程1,主講:何軍 2011-秋季學(xué)期,2,Refreshing,窗口程序“Hello World” Windows的消息驅(qū)動 Windows的Callback機(jī)制,3,4,Outline,在程序中使用資源 程序中的鍵盤消息與鼠標(biāo)消息 實例:簡單的打字程序 小結(jié),5,1. 在程序中使用資源,6,1.1 什么是資源,資源是與程序相關(guān)的有用的數(shù)據(jù) 菜單、圖標(biāo)、位圖、快捷鍵、字符串表、對話框、光標(biāo) . 除此之外,用戶還可以自定義資源,7,1.2 如何使用資源,Visual Studio管理資源,8,1.2 如何使用資源,資源ID(唯一標(biāo)識碼) 菜單 圖標(biāo) 游標(biāo),9,1.2
2、 如何使用資源,菜單命令 ID 名字,10,1.2 如何使用資源,Win32 API 菜單相關(guān):LoadMenu,SetMenu 圖標(biāo)相關(guān):LoadIcon 游標(biāo)相關(guān):LoadCursor,11,1.2 如何使用資源,程序如何執(zhí)行菜單中的命令 菜單中的命令:也是消息 問題:在哪個函數(shù)處理菜單中的命令?,12,1.2 如何使用資源,響應(yīng)菜單中的命令 消息處理函數(shù)WndProc WM_COMMAND LOWORD(wParam) 標(biāo)識哪一條菜單命令被觸發(fā) ID_FILE_EXIT,13,2. 鍵盤消息與鼠標(biāo)消息,14,2.1 鍵盤消息,鍵盤消息 WM_KEYDOWN, WM_SYSKEYDOWN
3、WM_KEYUP, WM_SYSKEYUP,15,2.1 鍵盤消息,鍵盤消息 TranslateMessage WM_CHAR,/ Main message loop: while (GetMessage( ,16,2.1 鍵盤消息,進(jìn)一步細(xì)節(jié) wParam:鍵的虛擬鍵碼 lParam:該按鍵的狀態(tài),17,2.1 鍵盤消息,按下A鍵,觀察wParam WM_KEYDOWN:0 x41(A) WM_CHAR:0 x61 (a) WM_KEYUP:0 x41 (A),18,2.2 鼠標(biāo)消息,19,2.2 鼠標(biāo)消息,進(jìn)一步細(xì)節(jié)lParam 鼠標(biāo)的位置坐標(biāo)(x,y) x=LOWORD(lParam)
4、y=HIWORD(lParam),20,2.2 鼠標(biāo)消息,進(jìn)一步細(xì)節(jié)wParam 鼠標(biāo)的狀態(tài) MK_LBUTTON, MK_MBUTTON, MK_RBUTTON, MK_SHIFT, MK_CONTROL if (wParam & MK_CONTROL),21,3. 實例剖析,22,簡單的打字程序,具有簡單的菜單和自定義的圖標(biāo) 設(shè)置簡單的字體顏色與背景色 在客戶區(qū)實時的打印出鍵盤輸入的字符 能夠響應(yīng)鼠標(biāo)事件,23,24,3.1 使用資源,使用Visual Studio資源編輯器管理資源 菜單、圖標(biāo)、對話框等等 使用Win32 API在程序中引入資源,25,3.2 設(shè)置顏色,設(shè)置字體顏色 Se
5、tTextColor 設(shè)置背景顏色 SetBkColor,26,3.3 打字并輸出,問題 在程序的什么地方接收鍵盤輸入? 在程序的什么地方輸出鍵盤的輸入?,27,3.3 打字并輸出,接收鍵盤的輸入 消息處理的WndProc函數(shù) WM_CHAR 輸出鍵盤的輸入 消息處理的WndProc函數(shù) WM_PAINT,28,3.4 鼠標(biāo)消息處理,問題 在程序的什么地方捕獲鼠標(biāo)消息? 在程序的什么地方輸出捕獲的鼠標(biāo)消息?,29,3.4 鼠標(biāo)消息處理,捕獲鼠標(biāo)消息 消息處理的WndProc函數(shù) WM_LBUTTONDOWN 輸出捕獲的鼠標(biāo)消息 消息處理的WndProc函數(shù) WM_PAINT,30,本節(jié)課小結(jié),31,重要概念,程序中的資源 鍵盤事件與消息 鼠標(biāo)事件與消息 WM_COMMAND消息的處理,32,新的Win32API,資源相關(guān) LoadMenu, SetMenu, LoadCursor, LoadIcon 界面相關(guān) SetWindow
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年中國奢侈品箱包行業(yè)規(guī)模分析及投資策略研究報告
- 2024-2030年中國半纖維素酶行業(yè)運(yùn)行狀況及投資發(fā)展前景預(yù)測報告
- 2024年生產(chǎn)車間租賃與產(chǎn)業(yè)基金投資服務(wù)合同3篇
- 質(zhì)量監(jiān)督程序
- 詹凱煜畢業(yè)設(shè)計報告書論文
- 2024年度高層建筑基礎(chǔ)施工混凝土供應(yīng)合同范本3篇
- 海南省部分學(xué)校2021-2022學(xué)年高一上學(xué)期期中考試歷史試題
- 2024年城市宣傳片制作與發(fā)布合同范本3篇
- 2025年嘉峪關(guān)道路貨運(yùn)駕駛員從業(yè)資格證考試
- 2025投影系統(tǒng)設(shè)備購銷合同書
- 外墻更換鋁合金窗施工方案
- 成都瀝青路面銑刨加鋪專項施工方案
- 普外科工作總結(jié)課件
- 社區(qū)衛(wèi)生服務(wù)中心公共衛(wèi)生服務(wù)項目月標(biāo)化工作量統(tǒng)計標(biāo)準(zhǔn)(2021年版)
- 歷史建筑普查信息表
- 文言文閱讀《明史左光斗傳》練習(xí)及答案譯文
- 北師大版五年級上冊期末數(shù)學(xué)口算
- [QC成果]高大模板支撐系統(tǒng)施工質(zhì)量控制
- GB∕T 40356-2021 廚用刀具
- 煤礦區(qū)隊安全風(fēng)險管控日分析制度辦法
- spc與cpk的基礎(chǔ)認(rèn)識1
評論
0/150
提交評論