win32编程 -- 菜单资源

简介: win32编程 -- 菜单资源

一、资源介绍


0a2653c851af460fa595bd959398a8f1.png


accelerator:快捷键


bitmap:位图


cursor:光标


dialog:对话框


html:网页


icon:图标


Menu:菜单


Ribbon:功能区


string table:字符串表


toolbar:工具栏


version:版本


二、通过资源添加菜单项


1、新建空项目


2、添加源文件(空窗口代码)


3、右击资源添加菜单


0eacb84100b54626af849e6b562bf92a.png


设置资源id


2d65d23f6d4748949b924e4057485923.png

2e9b90b2ca334476abebe75bafe6eeaa.png


4、在注册的时候加载资源


void Register(LPCWSTR lpClassName, WNDPROC winProc)
{
       WNDCLASSEX wc = { 0 };
       wc.cbSize = sizeof(wc);//结构体大小
       wc.cbClsExtra = 0;//窗口类的申请缓存区,0表示不开启缓存
       wc.cbWndExtra = 0;//窗口的申请缓存区,0表示不开启缓存
       wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);//背景颜色,一般白色
       wc.hCursor = NULL;//设置光标。null表示默认
       wc.hIcon = NULL;//默认左上角的图标
       wc.hInstance = g_hInstance;//第一个参数实例句柄,可以找到进程在那块内存
       wc.lpfnWndProc = winProc; //lp 一般都是指针,处理函数名或指针
       wc.lpszClassName = lpClassName;//窗口类名称,比如公司名字
       //wc.lpszMenuName = NULL;//没有菜单用null
        wc.lpszMenuName = (LPCWSTR)IDR_MENU1;//添加我们新建的菜单
       wc.style = CS_HREDRAW | CS_VREDRAW;//窗口变化,会重绘,窗口类的一般风格
       RegisterClassEx(&wc);
}


5、在创建窗口的时候加载资源


HWND CreateMain(LPCWSTR lpClassName, LPCWSTR lpWindowName)
{
       //返回菜单句柄,
       HMENU hMenu = LoadMenu(g_hInstance, (LPCWSTR)IDR_MENU1);
       HWND hWnd = CreateWindowExW(0, lpClassName, lpWindowName,  WS_OVERLAPPEDWINDOW,
              100, 100, 500, 600, NULL, hMenu, g_hInstance, NULL);
       return hWnd;
}
目录
相关文章
|
7月前
win32编程 -- 菜单资源
win32编程 -- 菜单资源
39 1
|
7月前
win32编程 -- 模式对话框
win32编程 -- 模式对话框
40 1
|
7月前
|
索引
win32编程 -- 菜单使用
win32编程 -- 菜单使用
26 1
|
7月前
win32编程 -- 系统菜单及右键菜单
win32编程 -- 系统菜单及右键菜单
83 1
|
7月前
win32编程 -- 字符串资源与快捷键资源
win32编程 -- 字符串资源与快捷键资源
40 0
|
7月前
win32编程 -- 无模式对话框
win32编程 -- 无模式对话框
36 0
|
7月前
win32编程 -- 图标资源与光标资源
win32编程 -- 图标资源与光标资源
41 0
|
7月前
win32编程 -- 窗口注册与创建
win32编程 -- 窗口注册与创建
51 0
|
计算机视觉
Qt实用技巧:设置应用程序exe的图标
Qt实用技巧:设置应用程序exe的图标
Qt实用技巧:设置应用程序exe的图标
|
API Windows
Qt实用技巧:Qt中添加对windows api的支持,显示/隐藏任务栏和桌面(解决无法找到windows api)
Qt实用技巧:Qt中添加对windows api的支持,显示/隐藏任务栏和桌面(解决无法找到windows api)