双击鼠标窗口最小化

luofenghen 2010-06-03 09:25:16
同时按下鼠标的左右键 要求桌面上得到焦点的 那个窗体最小化
有没有相关的思路或者代码?
...全文
277 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
luofenghen 2010-06-04
  • 打赏
  • 举报
回复
不好意思 看错了 我一直以为是你在回答 我给一楼了 没有给你 老鸟 抱歉啊 下次补上 你们2个头像都一样 看错了~
luofenghen 2010-06-04
  • 打赏
  • 举报
回复
不是给了30分了吗~
Tiger_Zhao 2010-06-04
  • 打赏
  • 举报
回复
辛苦分都没给,没有诚意。
Tiger_Zhao 2010-06-03
  • 打赏
  • 举报
回复
做全局鼠标钩子太麻烦,不如做成只有 Sub Main() 的简单程序,创建快捷方式设定快捷键进行调用。
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 tiger_zhao 的回复:]
鼠标消息本来就是当前有焦点的窗口接收的。
如果是你的窗体发现了“同时按下鼠标的左右键”这个动作,把自己最小化就是你的需求?
[/Quote]
换句话说 就是 得到鼠标 “同时按下鼠标的左右键”这个动作 然后发送消息给得到焦点的 窗体

不可以后台运行 ?
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
不是 后台运行程序 然后捕捉鼠标事件 然后把得到焦点的窗体最小化
我用 getfocus 这个API得到焦点的窗体 为什么是0呢? VB的调试的程序 都有值的 我的电脑和其他的程序就为0了
Tiger_Zhao 2010-06-03
  • 打赏
  • 举报
回复
鼠标消息本来就是当前有焦点的窗口接收的。
如果是你的窗体发现了“同时按下鼠标的左右键”这个动作,把自己最小化就是你的需求?
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
我又测试了下 用计时器的话 那个窗体没有得到焦点 计时器还是能够继续执行的 难道是双核的原因?
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 jhone99 的回复:]
程序载体和得到焦点的窗体存在逻辑矛盾
[/Quote]
很对
那有没有其他方法?
jhone99 2010-06-03
  • 打赏
  • 举报
回复
程序载体和得到焦点的窗体存在逻辑矛盾
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
同时按下鼠标左右键
我想到一种可行的
先得到窗体的句柄 然后给窗体发送消息 让他最小化?
jhone99 2010-06-03
  • 打赏
  • 举报
回复
到底是“双击鼠标”还是“同时按下鼠标左右键”哪一种?
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
用老马提供的思路和代码 成功的写出来代码
同时按下鼠标的左右键,然后把有焦点的窗体关闭
谢谢老马 也谢谢老鸟
Tiger_Zhao 2010-06-03
  • 打赏
  • 举报
回复
用现成的鼠标手势工具好了——比如 StrokeIt
嗷嗷叫的老马 2010-06-03
  • 打赏
  • 举报
回复
思路:

"同时",是指在一定的时间内按下了左键与右键

那么,按下任意一键时,做个自增计数.

再做个延时,比如50ms,在结束后检测计数是否大于1,如果是,则执行你那个"最小化"的动作.

同时清空计数.

这个用鼠标HOOK应该方便点,参考:

http://www.m5home.com/blog/article.asp?id=245

不过要是换成双击,那就有点麻烦了,主要是因为与部分窗体的默认行为有冲突.
luofenghen 2010-06-03
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 tiger_zhao 的回复:]
做全局鼠标钩子太麻烦,不如做成只有 Sub Main() 的简单程序,创建快捷方式设定快捷键进行调用。
[/Quote]
能不能提供下 做成鼠标的 思路

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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