hellowin -windows菜单编程
2014-03-09 16:28
323 查看
在工程文件下右键-添加-资源,
选择menu 新建即可进入可视化的菜单资源编辑,
我们可以看到在头文件下多出一个resource.h的头文件,
资源文件下看到多出一个扩扩展名为.rc的资源文件,可将它拖到源文件下。
******************************************************************************************
*发现resource.h头文件打开的情况下进入重新编辑打开我们的菜单"***.rc"
会出现一个"在另一个编辑器中打开"的错误,先将头文件resource.h关掉即可。
*****************************************************************************************
加载菜单:(转自:*点击打开链接*)
第一种加载方式(类设计时):
第二种加载方式(窗体创建时):
第三种加载方式(窗体创建后):
************************************************************************************************
如何使用我们创建的菜单
在LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 函数中
switch(message)
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case ID_ADDNEW: //ID_ADDNEW 为我们创建的菜单下各menu的ID下同
//MessageBox(NULL,L"addNew",L"add", MB_OK);
break;
case ID_OPEN:
//MessageBox(NULL, L"Hello_string", L"szCaptionMain", MB_OK);
//CFileDialog();
//CFileDialog dlg(bOpen, "*.csv", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "CSV (逗号分隔符)(*.csv)|*.csv|All files (*.*)|*.*||");
break;
case ID_EXIT:
DestroyWindow(hwnd);//退出窗口
break;
}
}
选择menu 新建即可进入可视化的菜单资源编辑,
我们可以看到在头文件下多出一个resource.h的头文件,
资源文件下看到多出一个扩扩展名为.rc的资源文件,可将它拖到源文件下。
******************************************************************************************
*发现resource.h头文件打开的情况下进入重新编辑打开我们的菜单"***.rc"
会出现一个"在另一个编辑器中打开"的错误,先将头文件resource.h关掉即可。
*****************************************************************************************
加载菜单:(转自:*点击打开链接*)
第一种加载方式(类设计时):
WNDCLASS wndclass; .... wndclass.lpszMenuName=MAKEINTRESOURCE(IDR_MENU1); //这里省略了窗体类创建时需要填写的其他信息.
第二种加载方式(窗体创建时):
HMENU hmenu; WNDCLASS wndclass; .... wndclass.lpszMenuName=NULL; //这里省略了一些窗体类的必要信息填写,和注册窗口类等操作 //加载菜单到菜单句柄中 hmenu=LoadMenu(hInstance,MAKEINTRESOURCE(IDR_MENU1)); //在创建窗体时候载入菜单 hwnd=CreateWindow("text","hellow world",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT, CW_USEDEFAULT,CW_USEDEFAULT,NULL,hmenu,hInstance,NULL);
第三种加载方式(窗体创建后):
HMENU hmenu; WNDCLASS wndclass; .... wndclass.lpszMenuName=NULL; //这里省略了一些窗体类的必要信息填写,和注册窗口类等操作 //创建窗体 hwnd=CreateWindow("text","hellow world",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT, CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL); //加载菜单到菜单句柄中 hmenu=LoadMenu(hInstance,MAKEINTRESOURCE(IDR_MENU1)); //动态的加载菜单到窗体中去 SetMenu(hwnd,hmenu);
************************************************************************************************
如何使用我们创建的菜单
在LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 函数中
switch(message)
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case ID_ADDNEW: //ID_ADDNEW 为我们创建的菜单下各menu的ID下同
//MessageBox(NULL,L"addNew",L"add", MB_OK);
break;
case ID_OPEN:
//MessageBox(NULL, L"Hello_string", L"szCaptionMain", MB_OK);
//CFileDialog();
//CFileDialog dlg(bOpen, "*.csv", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "CSV (逗号分隔符)(*.csv)|*.csv|All files (*.*)|*.*||");
break;
case ID_EXIT:
DestroyWindow(hwnd);//退出窗口
break;
}
}
相关文章推荐
- Windows外壳扩展编程之添加右键菜单
- (转)VC++ 外壳扩展编程之windows右键菜单
- MFC学习笔记之四————菜单编程与windows消息分类
- VC Windows shell扩展编程(为系统右键菜单添加二级菜单傻瓜教程)
- MFC学习笔记之四————菜单编程与windows消息分类
- (C#)Windows Shell 外壳编程系列7 - ContextMenu 注册文件右键菜单
- windows编程之菜单操作
- (C#)Windows Shell 外壳编程系列7 - ContextMenu 注册文件右键菜单
- Windows 编程[13] - 菜单与菜单资源(二)
- VC++ 外壳扩展编程之windows右键菜单
- (C#)Windows Shell 外壳编程系列7 - ContextMenu 注册文件右键菜单
- (C#)Windows Shell 编程系列3 - 上下文菜单(iContextMenu)(一)右键菜单
- (C#)Windows Shell 外壳编程系列 - ContextMenu 注册文件右键菜单
- (C#)Windows Shell 外壳编程系列7 - ContextMenu 注册文件右键菜单
- (C#)Windows Shell 编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令
- 有关WINDOWS编程中涉及到菜单的使用技巧(精心收藏)
- Windows 编程[14] - 菜单与菜单资源(三)
- Windows编程基础 第六章 系统菜单 上下文相关菜单 图标 光标 字符串 菜单 加速键
- (C#)Windows Shell 外壳编程系列3 - 上下文菜单(iContextMenu)(一)右键菜单
- (C#)Windows Shell 外壳编程系列7 - ContextMenu 注册文件右键菜单