mfc编程 孙鑫_孙鑫MFC学习笔记6:菜单编程
1.對菜單響應的順序:
視類,文檔類,框架類,應用程序類
2.消息的分類
3.CWnd繼承自CCmdTarget類,
所以從CWnd派生出的類也可以接收WM_COMMAND消息
4.命令的消息路由
5.GetMenu獲取指向菜單欄的指針
6.GetSubMenu獲取指向子菜單的指針
7.CheckMenuItem設置復選菜單
8.SetDefaultItem設置缺省菜單項
9.分隔欄也要計算索引位置
10.一個子菜單中只有一個菜單項作為缺省菜單
11.SetMenuItemBitmaps設置菜單項位圖
12.GetSystemMetrics獲取系統信息
13.EnableMenuItem設置菜單禁用(要設置m_bAutoMenuEnable=false)、
14.SetMenu設置菜單欄
要用Detach分離
15.命令更新
16.OnContextMenu、TrackPopupMenu增加右鍵菜單(視類)
菜單顯示是以屏幕坐標為標準
17.ClientToScreen轉客戶區坐標為屏幕坐標
18.AppendMenu 動態增加菜單項
19.CreatePopupMenu添加一個空的彈出菜單
20.InsertMenu插入菜單
21.DeleteMenu刪除菜單
22.動態增加菜單的命令響應
*1.在Resource.h中定義命令ID
*2.可將動態增加時取的ID改為命令ID宏
*3.在頭文件中增加響應函數聲明(格式為 afx_msg void 函數名(); )
*4.源文件中加消息映射(末尾沒有分號)(格式為 消息(ID,響應函數) )
*5.在源文件中加函數實現(沒有afx_msg)
23.程序中動態增加的菜單需要窗口重繪才能顯示
24.DrawMenuBar菜單欄重繪(CMainFrame中)
25.Invalidate窗口重繪(用于擦除窗口臨時文字)
26.Find查找字符串
27.CStringArray字符串數組(Add,GetAdd,GetSize...)
28.覆蓋OnCommand截獲消息
注意:要設置m_bAutoMenuEnable=false
29.LOWORD,HIWORD獲取高低字節序值
30.GetActiveView獲取當前視類指針
?用菊子曰寫博客,就是爽!
總結
以上是生活随笔為你收集整理的mfc编程 孙鑫_孙鑫MFC学习笔记6:菜单编程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SI14T触摸按键芯片兼容替代TMS12
- 下一篇: 基于stm32的自平衡小车