怎样在vc++中添加menu菜单

怎样在vc++中添加menu菜单,第1张

一、创建新工程

二、编辑菜单资源

1、添加菜单按“Ctrl+R”,双击“Menu”图标

2、于菜单编辑器内编辑菜单

四、添加代码(红色部分)

void CCMenuView::OnUpdateShow(CCmdUI* pCmdUI)

{

// TODO: Add your command update UI handler code here

MessageBox(“右键d出菜单测试!“)

}

void CCMenuView::OnRButtonDown(UINT nFlags, CPoint point)

{

// TODO: Add your message handler code here and/or call default

CMenu menu

menu.LoadMenu(IDR_MENU1)

CMenu *pPopup=menu.GetSubMenu(0)

ClientToScreen(&point)

pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,

this)

CView::OnRButtonDown(nFlags, point)

}

五、编译

七、函数说明

CMenu::TrackPopupMenu函数声明

BOOL TrackPopupMenu(UINT nFlags,int x,int y,CWnd*pWnd,LPCRECT LPrECT=0)

nFlags:d出菜单的位置

x:d出菜单的水平位置

y:d出菜单的垂直位置

pWnd:d出菜单的所有者

lpRect:一包含矩形坐标的RECT结构体指针。

功能:显示一d出菜单。函数调用成功,返回非零值;否则返回零。

CreateMenu的函数放在WinMain函数里面就可以了啊

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpszCmdLine,int nCmdShow){

MSG Msg

WNDCLASS wndclass

HWND hwnd

char lpszClassName[]="我的窗口"

char lpszTitle[]="MyWindows"

char lpszMenuName[]="menu"

hmenu=CreateMenu()

AppendMenu(hmenu,MF_ENABLED,IDM_OPENBIG,"打开目标图像")

AppendMenu(hmenu,MF_ENABLED,IDM_OPENSMALL,"打开模板图像")

AppendMenu(hmenu,MF_ENABLED,IDM_EXIT,"退出")

wndclass.style=0

wndclass.lpfnWndProc=WndProc

wndclass.cbClsExtra=0//窗口类无扩展

wndclass.cbWndExtra=0//窗口实例无扩展

wndclass.hInstance=hInstance//当前实例句柄

wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION)//窗口的最小化图标为默认值

wndclass.hCursor=LoadCursor(NULL,IDC_ARROW)

wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH)

wndclass.lpszMenuName=lpszMenuName

wndclass.lpszClassName=lpszClassName

if(!RegisterClass(&wndclass)){

MessageBeep(0)

return false

}

//创建窗口

hwnd=CreateWindow(

lpszClassName,

lpszTitle,

WS_OVERLAPPEDWINDOW,

CW_USEDEFAULT,

CW_USEDEFAULT,

CW_USEDEFAULT,

CW_USEDEFAULT,

NULL,

hmenu,

hInstance,

NULL

)

ShowWindow(hwnd,nCmdShow)

UpdateWindow(hwnd)

while(GetMessage(&Msg,NULL,0,0)){

TranslateMessage(&Msg)

DispatchMessage(&Msg)

}

return Msg.wParam

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11933658.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存