如何解决LUA-有没有一种方法可以将用户的输入分配为表的键?
我是编程的初学者,我想知道用户输入是否可以成为表的键以及如何完成该表。
解决方法
用户输入与“系统编程”有关,并且在很大程度上取决于您的平台。 Lua无法访问与系统相关的内容,例如输入,图形或音频,因此您需要使用库/框架。例如,love2d.org是一个很好的Lua框架,可以处理很多系统内容。以下示例仅检查WASD密钥,但您可以轻松地将其扩展为检查所有密钥:
state = {}
keys = { "w","a","s","d" }
function love.update(dt)
for i,key in ipairs(keys) do
local s = love.keyboard.isDown(key)
if state[key] ~= s then
state[key] = s
if isdown then
-- key press event
else
-- key release event
end
end
end
end
替代方法可以使用回调:
state = {}
function love.keypressed(key)
state[key] = true
end
function love.keyreleased(key)
state[key] = false
end
,
您可以使用io.read
来获取用户输入,并且可以轻松地将该输入用作表键。以下程序是一个非常简单的示例,输出其输入。
local t = {
[io.read()] = true,}
-- next gets a key-value pair from t. The extra parentheses are to avoid
-- printing 'true' along with the key.
print((next(t)))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。