如何去掉程序生成的任务栏按钮的右键菜单(50分)

L

linhl

Unregistered / Unconfirmed
GUEST, unregistred user!
自己做的程序,运行时都会在任务栏生成一个按钮,如果不想让这个<br>按钮的右键菜单来控制程序的最小化和关闭等操作,有什么办法禁止<br>出现这个右键菜单,但并不去掉任务栏按钮。
 
用这个函数就可以了,不仅在任务栏不出现,而且在Ctrl+Alt+Del弹出的列表中也不出现<br>ShowWindowAsync(Application.Handle, SW_HIDE);<br>函数说明参见帮助!
 
不知道你想要的功能是不是像我这个DEMO一样的呢?<br>我的是弹出了一个自己的菜单,我也可以控制它不弹出那个菜单。<br>有兴趣的可以下载个DEOM看看吧。<br>http://www.lkgarden.com/lfpsoft/index.zip<br><br>
 
能做到那样效果肯定行!!
 
procedure DeleteMenu(Handle:THandle);<br>var<br>&nbsp; SysMenu:HMenu;<br>&nbsp; i:integer;<br>&nbsp; j:integer;<br>begin<br>&nbsp; SysMenu:=GetSystemMenu(Handle,False);<br>&nbsp; i:=GetMenuItemCount(SysMenu)-1;<br>&nbsp; for j:=i downto 0 do<br>&nbsp; &nbsp; deletemenu(sysmenu,getsubmenu(sysmenu,j),MF_BYPOSITION);<br>end;<br>//============<br>调用<br>deletemenu(application.handle);
 
上面的方法对任务栏按钮上的右键菜单没用!!!
 
处理 WM_NCRBUTTONDOWN 消息:<br>参考此贴<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=1228981
 
WM_NCRBUTTONDOWN这个消息是对窗体上的标题栏才有效的。<br>对于WINDOWS的任务栏是没有效的。<br>我的方法是绝对可以的,为何没有人向我要代码的?
 
那就请 lfpsoft 贡献一下!
 
lfpsoft的DEOM似乎有点问题,下载后一点击就出现“Explorer非法操作“提示
 
我试过是没有问题的呀。在98/ME/2000/XP/.NET中都试过呀。<br>可能是没有将文件解压出来吧。因为程序需要用到里面的index.htm<br>将这两个文件解压出来就可以了。<br>需要源码请留下EMAIL吧。
 
好,zw84611@sina.com<br>不过你不如上传得了,<br>http://service.lonetear.com/delphi/<br>或者www.playicq.com
 
谁说没用?我试过,调用<br>deletemenu(application.handle);<br>后右击任务栏按钮不会弹出菜单
 
to lfpsoft:<br>index.zip文件没解压前就会有我叫的问题,解压后index.html文件也一样,<br>不过程序倒有效,给我发一人源代码吧<br>linhanlan@yahoo.com.cn
 
to seven_918:<br>我查了API函数,ShowWindowAsync(Application.Handle, SW_HIDE);<br>是实现窗体的最小化、最大化等操作,而不是屏蔽任务栏按钮右键菜单
 
To lfpsift<br>&nbsp; 源代码给我一份 hy_zgm@163.com
 
我已写成了控件,但是有一个小问题,就是使用了该控件之后,<br>关闭DELPHI时都会出现错误,不知道是什么原因呢?第一次学写控件,请高手们帮手<br>看看到底在哪里出错了。<br>控件下载:<br>&nbsp; &nbsp;http://www.lkgarden.com/lfpsoft/ccTrayMenu.zip
 
接受答案了.
 
顶部