现在的位置: 首页 > 综合 > 正文

如何在WM平台下, 给创建的Dialog添加菜单

2012年10月04日 ⁄ 综合 ⁄ 共 771字 ⁄ 字号 评论关闭

如何在WM平台下, 给创建的Dialog添加菜单

(2010-04-20 12:43:17)

标签:

it

分类: UI

如何在WM平台下, 给创建的Dialog添加菜单以下这段代码添加在CFileAssociationDlg::OnInitDialog()方法内, CFileAssociationDlg是你要创建的对话框.
 //
创建SHMENUBARINFO结构体
SHMENUBARINFO   mbi; 
// 
初始化, 每个字节都置为0
 ZeroMemory(&mbi,   sizeof(SHMENUBARINFO));   
//
设置结构体SHMENUBARINFO的长度
 mbi.cbSize   =   sizeof(SHMENUBARINFO);   
//
设置控制菜单的窗口,CFileAssociationDlg对话框
 mbi.hwndParent   =   this->m_hWnd;   
// IDR_HELLO_MENU
为资源文件中的Menu ID, 需要创建该菜单
 mbi.nToolBarId   =   IDR_HELLO_MENU;   
//
应用程序的实例
 mbi.hInstRes   =   AfxGetInstanceHandle();   
//
设置菜单属性, 这里需要注意的是SHCMBF_HMENU , SHCMBF_HIDESIPBUTTON属性, 前者必须要有, 否则菜单会创建失败, 后者只应用于Mobile
//
平台, 用来隐藏输入法菜单
 mbi.dwFlags = SHCMBF_HMENU | SHCMBF_HIDESIPBUTTON;
//
创建菜单
 if(SHCreateMenuBar(&mbi))
 {
  }

 else {
  ::DestroyWindow(m_hWnd);
  PostQuitMessage(1);
  return(-1);
 }

抱歉!评论已关闭.