5菜单、工具栏和状态栏汇总.pptVIP

  • 4
  • 0
  • 约1.13万字
  • 约 32页
  • 2016-10-16 发布于湖北
  • 举报
4交互对象的动态更新 (4)在CMainFrame::OnCreate中添加下列代码: int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||!m_wndToolBar.LoadToolBar(IDR_MAINFRAME)) { TRACE0(Failed to create toolbar\n); return -1; // fail to create } if (!m_wndNewBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||!m_wndNewBar.LoadToolBar(IDR_NEWBAR)) { TRACE0(Failed to create newbar\n); return -1; // fail to create } …… m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY); m_wndNewBar.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); DockControlBar(m_wndToolBar); DockControlBar(m_wndNewBar); …… return 0; } 4交互对象的动态更新 (5)打开菜单资源IDR_MAINFRAME,在“查看”菜单下添加一个菜单项“新工具栏(N)”,ID号设定为ID_VIEW_NEWBAR。 (6)打开Toolbar资源IDR_MAINFRAME,将上例新增的工具按钮同ID_VIEW_NEWBAR菜单关联起来。 (7)为CMainFrame类添加一个BOOL型的成员变量m_bNewBar。 (8)用ClassWizard在CMainFrame类中添加菜单ID_VIEW_NEWBAR的COMMAND和UPDATE_COMMAND_UI两个消息处理函数,并添加下列代码: void CMainFrame::OnViewNewbar() { m_bNewBar = !m_bNewBar; ShowControlBar( m_wndNewBar, m_bNewBar, FALSE); } void CMainFrame::OnUpdateViewNewbar(CCmdUI* pCmdUI) { m_bNewBar = m_wndNewBar.IsWindowVisible(); pCmdUI -SetCheck(m_bNewBar); } (9)编译运行并测试。打开“查看”菜单,可以看到“新工具栏”菜单前面有一个“√”,同时有一个工具按钮被选中,单击该工具按钮或选择“新工具栏”菜单,则新创建的工具栏不见,同时这个工具按钮恢复原状,而“新工具栏”菜单前面没有任何标记。若将代码中的SetCheck改为SetRadio,则“√”变成了“?”,这就是交互对象的更新效果。 菜单、工具栏和状态栏 1 菜单 2 工具栏 3 状态栏 4 交互对象的动态更新 1菜单 对于菜单的显示都遵循下列一些规则: 若点击某菜单项会弹出一对话框,那么在该菜单项文本后有“…”。 若某项菜单有子菜单,那么在该菜单项文本后有“?”。 菜单项需要助记符,用括号将带下划线的字母括起来。助记符与Alt构成一个组合键,当按住“Alt”键不放,再敲击该字母时,对应的菜单项就会被选中。 若某项菜单需要快捷键的支持,则一般将其列在相应菜单项文本之后。任何时候按下快捷键,相应的菜单命令都会被执行。 File菜单 1菜单 1.1用编辑器设计菜单 编辑菜单 在菜单的空位置上双击鼠标左键,则出现它的属性对话框,如图。 菜单编辑器 菜单的空位置 1菜单 菜单属性对话框 1菜单 需要注意的是: 当菜单项的属性中选中了Pop_up时,对话框中ID、Separator和Prompt项无效。 增加新的菜单项后,用户可以用鼠标将菜单项拖到其他

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档