我做了一个弹出菜单。
但是在菜单弹出的时候只有大约两个像素那么宽。而建立快捷菜单的时候是正常的长度的。不知道怎么回事。
下面是我的代码。
CMenu Menu;
Menu.LoadMenu(IDR_MENU); POINT point;
GetCursorPos(&point); Menu.TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON, point.x,point.y,AfxGetMainWnd(),NULL);
但是在菜单弹出的时候只有大约两个像素那么宽。而建立快捷菜单的时候是正常的长度的。不知道怎么回事。
下面是我的代码。
CMenu Menu;
Menu.LoadMenu(IDR_MENU); POINT point;
GetCursorPos(&point); Menu.TrackPopupMenu(TPM_LEFTALIGN|TPM_LEFTBUTTON, point.x,point.y,AfxGetMainWnd(),NULL);
解决方案 »
- 印地语变形字母(双字unicode)的unicode处理及显示问题
- 请教下我.已经三维空间的一个三角形.应如何设置相机的位置.焦点位置.相机朝向.还有D3DXMatrixLookAtLH 才能使屏幕上能看到一个旋转的三角
- winpcap pcap_breakloop问题,诚心请教各位
- 我在PreTranslateMessage()函数里截获CTRL+ENTER消息时出现的一个问题,求教!
- 菜单项禁用了,相应的工具按钮为什么没有灰掉啊?
- 用ado在access数据库建表时怎么定义字段的长度?
- 是否可以多开同一个线程
- 关于 Edit 的问题
- 请教:怎样调用tts接口实现程序对文本的朗读?
- CTabView如何捕捉到关闭事件,ON_WM_CLOSE ONCLOSE好像不起作用
- 关于sockets
- 谁有POSIFLEX PP6000微打 的命令集? POSIFLEX网站竟然没有!急用!
{
// if Shift-F10
if (ptMousePos.x == -1 && ptMousePos.y == -1)
ptMousePos = (CPoint) GetMessagePos(); ScreenToClient(&ptMousePos); UINT uFlags;
HTREEITEM htItem;
htItem = HitTest( ptMousePos, &uFlags ); if( htItem == NULL )
return;
m_hActiveItem = htItem; CMenu menu;
CMenu* pPopup; // the font popup is stored in a resource
menu.LoadMenu(IDR_TREEITEM_CONTEXTMENU);
pPopup = menu.GetSubMenu(0);
ClientToScreen(&ptMousePos);
pPopup->TrackPopupMenu( TPM_LEFTALIGN, ptMousePos.x, ptMousePos.y, this );
}