我写的一个小程序,有些小小的问题,求助大家了,给分决不食言

wxjh 2002-10-04 08:44:02
平时缩放在系统托盘中,打游戏时可以用热键激活他,使他能够处于屏幕的最顶层,(游戏是全屏的),而且不能让游戏退出,就像金山游侠那样
...全文
26 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
knock 2002-10-04
  • 打赏
  • 举报
回复
对游戏而言,你好象不是那么容易使用你自己定义的热键,因为大多数游戏都屏蔽了热键。。
rwdx 2002-10-04
  • 打赏
  • 举报
回复
up
wxjh 2002-10-04
  • 打赏
  • 举报
回复
老兄的意思时说,用截获消息进行处理,我怎么没想到呢,这个我经常作,好,谢谢你了
zsy_good 2002-10-04
  • 打赏
  • 举报
回复
Const WM_ICONCALLBACKMESSAGE=WM_USER+0;
tind:TNotifyIconData;
procedure WndProc (var Message:TMessage);message WM_iconcallbackMessage; //上面都是定义

//压缩到任务栏
tind.cbSize:=SizeOf (TNotifyIconData);
tind.Wnd:=form1.Handle;
tind.hIcon:=Application.Icon.Handle;
tind.uFlags:=NIF_TIP OR NIF_ICON OR NIF_MESSAGE;
tind.uID:=0;
tind.szTip:='测试';
tind.uCallBackMessage:=WM_ICONCALLBACKMESSAGE;
shell_NotifyIcon (NIM_ADD,@tind);
shell_NotifyIcon (NIM_delete,@tind);


//截获点击消息的函数
procedure WndProc (var Message:TMessage);

if msg.LParam=WM_LButtonDown then
begin
ShowWindow(Application.Handle,SW_Show);
Application.Restore;
end
else if msg.LParam=WM_RButtonDown then
begin
GetCursorPos(p);
PopupMenu1.Popup(p.x,p.y);
end;

注册全局键盘钩子,
使用
setwindowpos 吧窗体放到顶层
wxjh 2002-10-04
  • 打赏
  • 举报
回复
将一下思路吧
zsy_good 2002-10-04
  • 打赏
  • 举报
回复
你的问题,问题在那呢?
你讲了只有功能,要我们全部帮你做吗?

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧