CWDG论坛-专业魔兽插件's Archiver

guileen 发表于 2007-9-17 10:32

怎样在按下某个按键的时候激活一段lua函数

看了ShortKey的代码, 居然没有看到对于KeyPress事件的相关部分,使我很纳闷?

Ace里面也没有注意到有KeyPress这样的Event, 请问如何将按键和函数相绑定?

biggates 发表于 2007-9-17 11:06

请参考 Bindings.xml 中的内容

simonw 发表于 2007-9-17 11:10

你参考我的这个帖子 [url=http://bbs.cwowaddon.com/thread-1130-1-2.html]http://bbs.cwowaddon.com/thread-1130-1-2.html[/url]

ShortKey中之所以没有加入按键执行自定义函数, 因为在EVA Framework中已经很好的封装了这样的需求.

EVA中的片段代码实现按键绑定自定义函数
[language=lua]
function EvaHelloWorld.Say1()
DEFAULT_CHAT_FRAME:AddMessage("hello")
end

EvaHelloWorld.HelloBlock = {
RequestTypes = {"KeyBinding"},
KeyBindings = {"ALT-H"},
Commands = {  
  {Description = "say hello", Function = EvaHelloWorld.Say1}  
}
}
[/language]

guileen 发表于 2007-9-17 11:46

frame.func=myfunc;
这需要创建一个UI了,我现在还不会做UI。。。
另外一个问题,
/lua my lua code........ ; 想做这样一个slash命令,
1,怎么得到这个slash后面的文本?
2,怎么将后面的文本作为lua脚本执行?
3,将这个/lua 命令放在macro里面,会有效果吗?macro支持自定义的slash命令吗?

希望高手再指点一下

simonw 发表于 2007-9-17 12:18

推荐你看看EVA圈子里的内容, 菜鸟做插件系列和斜杠命令的讨论. 有兴趣的话欢迎加入圈子.
[url]http://www.cwowaddon.com/mygroup-2[/url]

EVA对于初学插件编程非常容易上手, 如果你需要了解wow本身的机制, 可以看[url]http://wiki.cwowaddon.com/[/url] 有很多中文资料.

macro里不支持slash命令的. 执行字符串语法可以使用loadstring

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.