Поле сообщения является элементом GUI и, как и многие языки, не является частью стандарта. Либо вы используете внешнюю библиотеку (list), системные библиотеки/собственные функции (LuaJITFFI), либо расширьте свой переводчик Lua C function.
Я бы предпочел LuaJIT. Пример для окон:
local ffi = require("ffi") -- Load FFI module (instance)
local user32 = ffi.load("user32") -- Load User32 DLL handle
ffi.cdef([[
enum{
MB_OK = 0x00000000L,
MB_ICONINFORMATION = 0x00000040L
};
typedef void* HANDLE;
typedef HANDLE HWND;
typedef const char* LPCSTR;
typedef unsigned UINT;
int MessageBoxA(HWND, LPCSTR, LPCSTR, UINT);
]]) -- Define C -> Lua interpretation
user32.MessageBoxA(nil, "Hello world!", "My message", ffi.C.MB_OK + ffi.C.MB_ICONINFORMATION) -- Call C function 'MessageBoxA' from User32
Спасибо, Алекс. Я также нашел этот метод использования стандартного окна сообщений Windows: http://stackoverflow.com/a/22462842/4971456 –
Не могли бы вы привести пример, а не просто ссылку на библиотеку? Не «ненавидеть игрока» принятый ответ, но хорошо известно, что однострочные ответы, связанные с внешними ресурсами, должны быть сделаны скорее комментариями, чем ответами. –