国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

MFC對話框中添加狀態欄的方法

2020-05-23 14:17:44
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了MFC對話框中添加狀態欄的方法,實例分析了MFC對話框添加狀態欄所涉及的相關成員變量與事件實現技巧,需要的朋友可以參考下

本文實例講述了MFC對話框中添加狀態欄的方法。分享給大家供大家參考。具體如下:

1.在對話框的dlg實現類里添加成員變量:

 

 
  1. CXTPStatusBar m_wndStatusBar;  
  2. //狀態欄(或者是CStatusBar) 
  3. //在OnInitDialog方法中初始化: 
  4. static UINT indicators[] = 
  5. ID_SEPARATOR, // status line indicator 
  6. ID_INDICATOR_CAPS, 
  7. ID_INDICATOR_NUM, 
  8. ID_INDICATOR_SCRL, 
  9. }; 
  10. //添加狀態欄 
  11. if (!m_wndStatusBar.Create(this) || 
  12. !m_wndStatusBar.SetIndicators(indicators, 
  13. sizeof(indicators)/sizeof(UINT))) 
  14. TRACE0("Failed to create status bar/n"); 
  15. return -1; // fail to create 

2.添加OnKickIdle事件(在對話框的dlg的頭文件加上) :

 

 
  1. afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 
  2. afx_msg void OnUpdateKeyIndicator(CCmdUI* pCmdUI); 
  3. DECLARE_MESSAGE_MAP() 

3.在實現類中添加對應的兩個方法:

 

 
  1. LRESULT CDialogPanesDlg::OnKickIdle(WPARAM, LPARAM) 
  2. m_wndStatusBar.SendMessage(WM_IDLEUPDATECMDUI, TRUE); 
  3. return 0; 
  4. void CDialogPanesDlg::OnUpdateKeyIndicator(CCmdUI* pCmdUI) 
  5. UINT nVK; 
  6. UINT flag = 0×0001; 
  7. switch (pCmdUI->m_nID) 
  8. case ID_INDICATOR_CAPS: 
  9. nVK = VK_CAPITAL; 
  10. break
  11. case ID_INDICATOR_NUM: 
  12. nVK = VK_NUMLOCK; 
  13. break
  14. case ID_INDICATOR_SCRL: 
  15. nVK = VK_SCROLL; 
  16. break
  17. default
  18. TRACE1("Warning: OnUpdateKeyIndicator – unknown indicator 0x%04X./n"
  19. pCmdUI->m_nID); 
  20. pCmdUI->ContinueRouting(); 
  21. return// not for us 
  22. pCmdUI->Enable(::GetKeyState(nVK) & flag); 
  23. // enable static text based on toggled key state 
  24. ASSERT(pCmdUI->m_bEnableChanged); 

4.運行發現看不見狀態欄,添加對話框的WM_SIZE事件:

 

 
  1. void CDialogPanesDlg::OnSize(UINT nType, int cx, int cy) 
  2. CDialog::OnSize(nType, cx, cy); 
  3. // TODO: Add your message handler code here 
  4. CRect rcClient(0, 0, cx, cy); 
  5. RepositionBars(0, 0xffff, AFX_IDW_PANE_FIRST, 0, 0, &rcClient); 
  6. RepositionBars(0, 0xffff, AFX_IDW_PANE_FIRST, reposQuery, &rcClient, &rcClient); 

希望本文所述對大家的MFC程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗甸县| 桓仁| 高尔夫| 博乐市| 饶阳县| 巨野县| 台北市| 进贤县| 玉山县| 宜城市| 江川县| 新巴尔虎右旗| 西盟| 孟州市| 京山县| 康平县| 十堰市| 泽普县| 潼南县| 齐齐哈尔市| 读书| 福贡县| 阿拉善盟| 卢氏县| 太原市| 连城县| 西安市| 通化市| 屏东市| 仁布县| 宜君县| 邓州市| 肃南| 乐安县| 南郑县| 正镶白旗| 沾化县| 美姑县| 上林县| 蒙阴县| 秦安县|