【发布时间】:2011-12-26 07:03:36
【问题描述】:
我知道函数中的参数,但我不知道事件是什么。我也听说过 JavaScript 函数事件,但由于我没有 js 经验,所以我不知道它们是什么。
【问题讨论】:
-
您是指lua.org/manual/5.1/manual.html#2.8 中讨论的事件 吗?
我知道函数中的参数,但我不知道事件是什么。我也听说过 JavaScript 函数事件,但由于我没有 js 经验,所以我不知道它们是什么。
【问题讨论】:
Lua 中没有什么特别的东西可以称为“事件”。我猜你说的是一般events(来自维基百科):
在计算中,事件是通常在程序范围之外启动并由程序内部的一段代码处理的操作
事件的一个例子是鼠标点击、按键、下载完成,任何你能想象到的事情。
为了对一个事件做出反应,需要写一个所谓的handler,有时也叫listener或callback,就是一段代码您注册以对某个事件做出反应。可用的事件、处理过程和处理程序注册都由您使用的库/框架决定,即它不是特定于 Lua 的,但 Lua 确实提供了函数作为编写处理程序的方式。
例如,在 Corona SDK (overview of events/listeners) 中,您可以按如下方式处理“触摸”事件:
Runtime:addEventListener("touch", function(event)
print("A touch event is being handled")
...
end)
【讨论】:
在标准 Lua 函数中没有“事件”之类的东西。也许有一些库可以为您提供它们,或者您可以编写脚本来模拟所需的行为。
如果您提供有关您想要完成的任务的信息并显示一些代码,您可以获得更具体的答案。
【讨论】: