精易论坛

标题: 易语言关于这个多个注册热键问题 [打印本页]

作者: xlz836019736    时间: 2010-3-31 19:06
标题: 易语言关于这个多个注册热键问题
为什么我这样写按了F1 F2 F3 F4那4个选择框都是同时选中啊,怎么改改才能变成按F1选择框10选中 按F2选择框9选中 按F3选择框8选中 F4选择框7选中



.版本 2
.支持库 xplib
.支持库 shellEx

.子程序 __启动窗口_创建完毕
.局部变量 攻J加倍
.局部变量 被攻J减半
.局部变量 攻J加速
.局部变量 走路加速

XP风格 (1)
攻J加倍 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F1键)
被攻J减半 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F2键)
攻J加速 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F3键)
走路加速 = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F4键)


.子程序 _标签1_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型

.如果 (选择框7.选中 = 假)
    选择框7.选中 = 真
.否则
    选择框7.选中 = 假
.如果结束
.如果 (选择框6.选中 = 假)
    选择框6.选中 = 真
.否则
    选择框6.选中 = 假
.如果结束
.如果 (选择框8.选中 = 假)
    选择框8.选中 = 真
.否则
    选择框8.选中 = 假
.如果结束
.如果 (选择框10.选中 = 假)
    选择框10.选中 = 真
.否则
    选择框10.选中 = 假
.如果结束
作者: jake20    时间: 2010-3-31 19:06
上传给附件还有审核 我把我写的 代码发给你看下 很简单 你新建一个程序 再创建一个标签就可以了
.版本 2
.支持库 shellEx

.程序集 窗口程序集1
.程序集变量 F1, 整数型
.程序集变量 F2, 整数型

.子程序 __启动窗口_创建完毕

F1 = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F1键)
F2 = 注册热键 (_启动窗口.取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F2键)

.子程序 _标签1_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型

.如果真 (参数一 = F1)
    标签1.标题 = “F1被按下”
.如果真结束
.如果真 (参数一 = F2)
    标签1.标题 = “F2被按下”
.如果真结束
' 如果嫌麻烦可以用API来写 也可以不创建变量 一般来说 第一个注册的热键的热键标识符是 33001 后面的逐个+1 就好 我这么写只是为了让你看明白
作者: 小磊    时间: 2010-3-31 19:09
不织布值
作者: 果子    时间: 2010-3-31 19:50
注册热键()命令返回的是热键ID,你每按你热册过的热键,就会传递给标签反馈事件下的"参数二",你判断这个参数就行了;
作者: xlz836019736    时间: 2010-4-1 22:59
回复 3# 果子


    怎么啊写?
作者: misf    时间: 2010-4-2 11:51
看看这个是不是你想要的

多个注册热键问题.e (4.62 KB, 下载次数: 494)
作者: jake20    时间: 2010-4-2 17:53
其实这个是很简单的 不多说 我写个源码你看下就明白了 省时间我就注册两个点击进入下载-多热键注册.e
作者: 果子    时间: 2010-4-2 21:11
楼上的正解,
作者: jake20    时间: 2010-4-2 22:27
回复 8# 果子


    正解人不给采纳也没办法不是 忽忽
作者: 潇潇联想    时间: 2010-4-3 07:51
哦卖累滴嘎嘎!!呵呵    是正解!
作者: xlz836019736    时间: 2010-4-3 09:30
回复 7# jake20


    参数一 = F1什么意思 参数一什么意思
作者: xlz836019736    时间: 2010-4-3 09:37
回复 7# jake20


    怎么不行
[e].版本 2
.支持库 xplib
.支持库 shellEx

.程序集 窗口程序集1
.程序集变量 A
.程序集变量 B
.程序集变量 C
.程序集变量 D
.程序集变量 E
.程序集变量 F

.子程序 __启动窗口_创建完毕

XP风格 (1)
A = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F1键)
B = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F6键)
C = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F2键)
D = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F3键)
E = 注册热键 (取窗口句柄 (), 标签1.取窗口句柄 (), 0, #F4键)


.子程序 _按钮1_被单击

编辑框1.内容 = 到文本 (目录_浏览 (“打开”, 真, , 真, 真))


.子程序 _按钮2_被单击

运行 (编辑框1.内容, 真, )


.子程序 _标签3_反馈事件, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型

.如果 (参数一 = A)
    选择框1.选中 = 真
.否则
    选择框1.选中 = 假
.如果结束
.如果 (参数一 = B)
    选择框2.选中 = 真
.否则
    选择框3.选中 = 假
.如果结束
.如果 (参数一 = C)
    选择框5.选中 = 真
.否则
    选择框5.选中 = 假[/e]
作者: jake20    时间: 2010-4-3 09:54
你说你这代码跑得起来不? 参数一 是什么你别管
先看你的代码 每一个如果都是单独执行的 你没发现?
你这样写还不如 写成
.版本 2

.如果真 (参数一 = a)
    .如果 (选择框1.选中 = 真)
        选择框1.选中 = 假
    .否则
        选择框1.选中 = 真
    .如果结束

.如果真结束

如果你要改就改成
.版本 2

.如果 (参数一 = a)
    选择框1.选中 = 真
.否则
    选择框1.选中 = 假
    .如果 (参数一 = b)
        选择框2.选中 = 真
    .否则
        选择框2.选中 = 假
        .如果 ()

        .否则

        .如果结束

    .如果结束

.如果结束

是你代码的问题 方法是没有错的
作者: qq974969638    时间: 2010-4-17 11:28
易语言自身注册热键不支持多热键!
但可以通过其他方法搞定!
作者: yanghuan    时间: 2011-2-20 11:11
{:3_239:}{:3_244:}
作者: qq147110    时间: 2012-2-13 13:23
6楼你写的“参数1=33001”是什么意思啊?




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4