我是编程的初学者,我想知道用户输入是否可以成为表的键以及如何完成该表。
答案 0 :(得分:0)
用户输入与“系统编程”有关,并且在很大程度上取决于您的平台。 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
答案 1 :(得分:0)
您可以使用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)))