如何在 CMyDialog 中用纯 API 实现弹出菜单? 1. 菜单需要动态创建,而不是从资源中读取。
2. 我知道大概要用到 CreatePopupMenu(), InsertMenuItem(), TrackPopupMenu(), MENUITEMINFO 等内容。但就是不能正确写出程序来。
3. 在使用 MENUITEMINFO 生成新菜单项的时候,编译器老是说 MIIM_STRING(也许这里写错了,但在程序中绝对没有写错) 没有定义,而且包含了 winuser.h 之后仍然如此 (注:我用的是 WindowsXP)。
4. 请大家帮个忙,最好能给出可以用的实例,谢谢!
2. 我知道大概要用到 CreatePopupMenu(), InsertMenuItem(), TrackPopupMenu(), MENUITEMINFO 等内容。但就是不能正确写出程序来。
3. 在使用 MENUITEMINFO 生成新菜单项的时候,编译器老是说 MIIM_STRING(也许这里写错了,但在程序中绝对没有写错) 没有定义,而且包含了 winuser.h 之后仍然如此 (注:我用的是 WindowsXP)。
4. 请大家帮个忙,最好能给出可以用的实例,谢谢!
解决方案 »
- 在XP下,如何使用splitbutton,万分焦急,求大神帮助
- 急问:VC调试时内存不足,谢谢O(∩_∩)O~
- 不用定时器,如何实现到达某个特定时刻,处理某个函数???????
- 学图像处理的请进来……
- 如何使DC画出来的变成半透明的
- 发现VC区有了钻石,散分
- VC++ 如何连接数据库
- 在CListBox怎么添加换行,用\r\n不行
- 请问构造函数后面加:是什么意思
- 请教出错信息:Compression.obj : error LNK2001: unresolved external symbol _sendto@24
- 如何学习mfc?请各位高手给点建议,谢谢啊!!!
- 简单问题:VC下,有无让程序停滞N秒的简单函数 XXX(N) ?
{#define ID_TST1 100
#define ID_TST2 101 ClientToScreen( &point ); CMenu PM;
ASSERT(PM.CreatePopupMenu( ));
ASSERT(PM.AppendMenu( MF_ENABLED | MF_UNCHECKED |
MF_STRING,
ID_TST1, _T("Test&1")));
ASSERT(PM.AppendMenu( MF_ENABLED | MF_UNCHECKED |
MF_STRING,
ID_TST2, _T("Test&2"))); ASSERT(PM.TrackPopupMenu( TPM_LEFTALIGN, point.x,
point.y, this)); CDialog::OnRButtonDown(nFlags, point);
}
menu.CreatePopupMenu();
men.AppendMenu(MF_STRINTG,..).
TrackPopupMenu(..)