我正在制作一个应用程序,它会在按下某个按钮后将对话框作为系统托盘图标。它工作正常,但我也需要打开相同的菜单对话框包含右键单击并写了下面的代码:系统托盘菜单错误MFC
CMenu pMenu;
pMenu.LoadMenu(IDR_MENU1);
POINT pointCursor;
::GetCursorPos(&pointCursor);
pMenu.TrackPopupMenu(TPM_BOTTOMALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON, pointCursor.x, pointCursor.y, this);
它创建菜单,但宽度的菜单非常薄如图所示以下:(黄色突出显示的区域是菜单)
,如果我只添加第一子菜单主菜单然后它还有以下代码:
CMenu *pMenu = GetMenu();
POINT pointCursor;
CMenu *pMenu = GetMenu();
::GetCursorPos(&pointCursor);
pMenu->GetSubMenu(0)->TrackPopupMenu(TPM_BOTTOMALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON,pointCursor.x,pointCursor.y,this);
在应用此代码我得到以下输出
其实我需要以下菜单:
请推荐我哪里做错了
问题何时发生?右键点击对话框,或者在任务栏上? – rrirower
@rrirower我已经写下弹出菜单的事件右键单击。 –
黄色应该显示“Open Recent User Profile”菜单项的子菜单吗?它是什么样子“如果我只添加主菜单的第一个子菜单”? – rrirower