右键菜单(共400分)(100分)

  • 主题发起人 主题发起人 o*o
  • 开始时间 开始时间
O

o*o

Unregistered / Unconfirmed
GUEST, unregistred user!
在我的程序中已经可以弹出Windows系统的右键菜单。
就是资源管理器中的那个。

但是我想把这个右键菜单作为我的某个MenuItem的子菜单
来使用,请问如何实现?
解决后另加300分,决不食言。

别说不可能,我见过老外的一个程序实现了。
 
既然可以弹出,可以得到它的HMENU ---Menu Handle.
使用WINDOW API的函数InsertMenu, InsertMenuItem加入到你的菜单中.
或在你的Menu事件中,把它加入.
 
能不能把你见到的那个老外的程序
Mailto://thtfsyh@263.net ?
我想看一下他做出来的效果。
还有,就是跟踪一下他的添加过程,希望能找到类似的解决方案。
 
你既然可以在你的程序中弹出Windows系统的右键菜单,那你一定知道右键菜单的
Handle啦,然后用InsertMenu把它插入别的菜单中,这个并不算太难呀!
 
能不能把你见到的那个老外的程序
Mailto://thtfsyh@263.net ?
我想看一下他做出来的效果。
还有,就是跟踪一下他的添加过程,希望能找到类似的解决方案。
 
老外的程序叫PowerBar,可到www.pchome.net下仔。

都怪我没说清楚。
我是有它的HANDLE,并可插入到MENUITEM里去,
但点击后不能执行相应命令,它的CommandID都乱了。

而单独POPUP它可以用的。
 
我想可以使用如下方法.
单独的Popup可用,可以得到,CommandID等,
你的Menu中只是显示,OnClick时调用PopupMenu 中的命令.
ShendMessage(?,WM_COMMAND,?,?);
 
这个问题也可以这样描述:

某个MenuItem添加了本程序的或其他程序的PopupMenu后,如何执行它的相应命令。

我发现对于本程序的PopupMenu,加到另一PopupMenu的MenuItem上,
可执行相应的OnClick;而加到MainMenu的MenuItem上,则要通过
procedure WMCommand(var msg:TWMCommand)来执行。

再谈谈吧。
 
计划变了(参见我刚提问的“WIN98的开始菜单”),不用这样添加菜单了。

感谢各位的提示。
kangxy:60
kucio:20
thtfsyh:20
 
后退
顶部