开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1642|回复: 76
打印 上一主题 下一主题
收起左侧

[已解决] 窗口热键冲突问题

 关闭 [复制链接]
结帖率:100% (18/18)
跳转到指定楼层
发表于 2025-3-23 22:12:59 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式   广东省东莞市
666精币





我打开同一个程序 开两个窗口 我使用了窗口1 我按了F2 窗口1和窗口2都会触发按了F2
怎么样只要我使用窗口1不管我按了什么热键 窗口2永远不会触发到我按到的热键

我使用窗口2也是按下F3也是一样不会冲突到窗口1的热键F3


其他热键设置也是一样 只用使用窗口1按热键都不会触发到窗口2的热键


补充内容 (2025-3-24 08:20):
exe程序不是我的  只有dll是我的 dll也没有窗口

评分

参与人数 23精币 +23 收起 理由
cbl521ysys + 1 感谢分享,很给力!~
3266167 + 1 感谢分享,很给力!~
ican8 + 1 感谢分享,很给力!~
jc520hll + 1 感谢分享,很给力!~
ma4747 + 1 感谢分享,很给力!~
z134 + 1 感谢分享,很给力!~
t176 + 1 感谢分享,很给力!~
无尘666 + 1 感谢分享,很给力!~
huangdi9569 + 1 感谢分享,很给力!~
pj小黑屋 + 1 感谢分享,很给力!~
zjbin1989 + 1 感谢分享,很给力!~
liy456 + 1 感谢分享,很给力!~
文西哥 + 1 感谢分享,很给力!~
booms + 1 感谢分享,很给力!~
望尘莫及 + 1 感谢分享,很给力!~
黯丄辶 + 1 感谢分享,很给力!~
暮光之城 + 1 感谢分享,很给力!~
hackjoe + 1 感谢分享,很给力!~
风雨3137 + 1 感谢分享,很给力!~
pcghr355 + 1 感谢分享,很给力!~
初阳123 + 1 感谢分享,很给力!~
Zźh926 + 1 感谢分享,很给力!~
huangdi956 + 1 感谢分享,很给力!~

查看全部评分


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:100% (7/7)

签到天数: 2 天

76
发表于 2025-4-1 11:39:27 | 只看该作者   广东省茂名市

用精易的命令“窗口_还原()”:
.版本 2

.子程序 窗口_还原, 逻辑型, 公开, 恢复一个最小化的程序,并将其激活;成功把回真,失败返回假;
.参数 窗口句柄, 整数型, , 欲还原的窗口句柄

返回 (OpenIcon (窗口句柄))


dll如下:
.版本 2

.DLL命令 OpenIcon, 逻辑型, "user32.dll", "OpenIcon", 公开, 窗口_还原   恢复一个最小化的程序,并将其激活
    .参数 hwnd, 整数型
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 2 天

75
 楼主| 发表于 2025-4-1 02:44:55 | 只看该作者   广东省东莞市
jingyi11023995 发表于 2025-3-31 10:10
dll没有窗口,有关系吗?dll可以判断目标窗口是否激活状态,dll是你的,你在源码加上判断就行了。 ...

我试试看看
回复

使用道具 举报

结帖率:100% (7/7)

签到天数: 2 天

74
发表于 2025-3-31 10:10:23 | 只看该作者   广东省茂名市

dll没有窗口,有关系吗?dll可以判断目标窗口是否激活状态,dll是你的,你在源码加上判断就行了。
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 2 天

73
 楼主| 发表于 2025-3-30 20:01:00 | 只看该作者   广东省东莞市
lzx5460 发表于 2025-3-30 13:15
触发热键的时候加个判断呢?
激活条件=窗口是否被激活(_启动窗口.取窗口句柄())如果(激活条件=真)
触 ...

窗口1不是我自己的软件 dll才是我的
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 2 天

72
 楼主| 发表于 2025-3-30 20:00:28 | 只看该作者   广东省东莞市
lzx5460 发表于 2025-3-30 13:15
触发热键的时候加个判断呢?
激活条件=窗口是否被激活(_启动窗口.取窗口句柄())如果(激活条件=真)
触 ...

我的dll 是没有窗口的 这个执行不了
回复

使用道具 举报

71
发表于 2025-3-30 13:15:54 | 只看该作者   湖南省长沙市
触发热键的时候加个判断呢?
激活条件=窗口是否被激活(_启动窗口.取窗口句柄())如果(激活条件=真)
触发快捷键
否则
返回()
'这样窗口不是激活状态下就不会触发热键了,只会在你当前使用的窗口下才会有触发作用
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 2 天

70
 楼主| 发表于 2025-3-29 21:30:08 | 只看该作者   广东省东莞市
白陌陌 发表于 2025-3-28 10:18
试试用进程取窗口句柄呢?

试过了 窗口1关闭 重新打开 就会失效
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 2 天

69
 楼主| 发表于 2025-3-29 21:29:43 | 只看该作者   广东省东莞市
jingyi11023995 发表于 2025-3-28 10:06
通过判断窗口是否为激活状态,决定是否执行就可以了。

dll没有窗口
回复

使用道具 举报

结帖率:100% (11/11)

签到天数: 3 天

68
发表于 2025-3-28 10:18:50 | 只看该作者   新疆维吾尔自治区伊犁哈萨克自治州
育空刘 发表于 2025-3-24 01:32
不是这样啊 我的是劫吃 dll   不是我写的EXE  只有dll 才是我自己的 EXE不是我的 ...

试试用进程取窗口句柄呢?
回复

使用道具 举报

结帖率:33% (1/3)

签到天数: 3 天

67
发表于 2025-3-28 02:33:55 | 只看该作者   甘肃省*
        感谢分享,很给力!~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:[email protected]
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表