各位大虾帮帮忙:
怎样才能在任务栏右键的弹出菜单中加入自己的菜单?或者完全是自己的菜单!
怎样才能在任务栏右键的弹出菜单中加入自己的菜单?或者完全是自己的菜单!
解决方案 »
- Tpngimage 问题 等哦
- 如何改变DELPHI与C的变量定义习惯
- 各位,string 类型长度不够怎么办? 也就是说存不下我给出的
- 好久没有长进了,国庆看看书:高价求购《可视化OpenGL程序设计》, 出版社:清华 作者:费广正等
- 有关InterBase的问题
- 在窗体上ONPAINT画线为何当我移动窗体线就出现时断时续呀急呀
- 请问哪里有完整的《Borland传奇》下载?
- 怎么在程序中添加一个计算字段?
- 请教delphi调用C++写的DLL函数问题
- 病毒侵害Delphi请求帮助!!!!!!!!!!!!!!!!!
- 在一个布满构件上单击一下鼠标或敲一下键盘将会发生什么?
- 关于一个一个控件的疑惑
procedure WMSYSCOMMAND(var msg:tmessage);message WM_SYSCOMMAND;
//////////////////////
procedure TForm1.Create(Sender:TObject);
const menuID=2000;
var
myMenu:hMenu;
begin
myMenu:=getSystemMenu(application.handle,false);//form1.handle更新form1系统菜单
AppendMenu(myMenu,menuID,MD_STRING,'my menu');//完全是自己的菜单,时要用DeleteMenu删除所有菜单再AppendMenu;
end;
procedure WMSYSCOMMAND(var msg:tmessage);
begin
inherited;
if msg.WParamLo=menuID then
showmessage('测试');
end;
你可以可以下载以下程序看效果:
http://www.lkgarden.com/lfpsoft/MyMenu.zip
如果是你想要的,联系我吧!
[email protected]
你的方法是可以实现我的要求,但是你的事件却不对,它不是响应的任务栏的右键菜单,而是窗体标题栏的右键菜单。各位大虾,能不能帮我解决这个问题?
procedure TForm1.OnAppMessage(var Msg:TMsg;var Handled:boolean);
begin
Handled:=false;
if Msg.message=WM_SYSCOMMAMD) and (Msg.wParam=menuID) then
begin
showMessage('测试');
Handled:=True;
end;
end;
:( 还是不行。Msg.message=WM_SYSCOMMAMD 这句报错我改成:
procedure OnAppMessage(var Msg:TMsg); message WM_SYSCOMMAND;//或者wm_appprocedure TForm1.OnAppMessage(var Msg:TMsg);
begin
if (Msg.message=WM_SYSCOMMAMD) and (Msg.wParam=menuID) then
begin
showMessage('测试');
end;
end;
还是不行,断点根本就进不去。
真是麻烦你了。
这个控件就可以让你的任务栏完全是你的自己的菜单阿!
http://kingron.myetang.com/delphi/taskmenu.pas
不过还是谢谢你。
加菜单用yang6130(2.5G)的方法是可以的,但事件不能响应。
能不能帮我解决这个问题?不管怎样,我提的问题解决了,不管剩下的问题有没有解决,今天一定结贴。
const
menuID=WM_USER + $100;//const menuID=2000;form1.onCreate;
begin
...
Application.OnMessage:=OnAppMessage;
end;
我真服了你了。你再看看以下程序我是不是用的第三方控件?
http://www.lkgarden.com/lfpsoft/SysMenu.zip
今次我可事先说明,这完全是在DELPHI下编译的,绝对没有用到第三方控件。之前那个我就是想说明可以控制显示任何菜单,想不到你以为是用了第三方控件。没带源代码这是因为想要的话可以与我联系!