2017-02-15 9 views
2

Мне просто интересно, возможно ли создание графического интерфейса с использованием Lua. Если да, то какую программу (ы) я должен использовать (и инструкции для начала работы)?Возможно ли создание GUI с Lua?

Спасибо!

+0

Взгляните сюда: http://stackoverflow.com/questions/18056592/how-can-i-make-an-gui-application-in-lua – stojo304

+1

Возможный дубликат [Как я могу сделать приложение GUI в Lua] (http://stackoverflow.com/questions/18056592/how- can-i-make-an-gui-application-in-lua) – nobody

+0

Не на своем собственном, вам нужно использовать библиотеку или встроить ее в другой язык. Если вы создаете простые приложения для Windows, вы можете взглянуть на то, как я использую Lua + AutoHotkey для создания графического интерфейса для создания различных макросов и инструментов: https://github.com/revolucas/AXRToolset – Alundaio

ответ

1

Lua обычно используется как встроенный в другое приложение, возможно, игровой движок, веб-сервер, систему IoT или что-то еще. Lua has many different applications, но Lua сам по себе не может использоваться для создания графических приложений. Вам нужно встроить Lua в приложение, которое обеспечивает привязки к какой-либо GUI-системе. Одна из таких систем - wxLua, и вы можете плавать еще много на Lua wiki.

+1

Его возможное приложение для записи автономного GUI. Например. Я делаю базовое приложение с помощью библиотеки IUP и создаю автономный файл '.exe', используя программу l-bia. Может быть, он не широко используется, но его вполне возможно. И вы не вставляете Lua в любое другое приложение. Просто используйте библиотеку Lua – moteus

+0

@moteus, у вас есть пример этого? Что такое библиотека IUP? – britzl

1

Есть двигатели Corona и Love2D, которые по существу являются двигателями lua gui.

Вы также можете создать свой собственный двигатель lua gui. Я разрабатываю один для POS-машин. Он называется Marco Polo и создает графический интерфейс в таблицах lua, которые очень похожи на JSON, и благодаря таблицам и метаметодам обновляется экран, как только пользователь вносит изменения в таблицы. Он также имеет дело с нажатиями клавиш и сенсорным экраном с событиями, передавая функцию обратного вызова в соответствующую таблицу событий, поэтому вызывается, как только происходит событие.

И вы также можете использовать LuaJIT. LuaJIT позволяет вам вызывать функции c непосредственно из Lua с помощью FFI, поэтому вы можете использовать обычные библиотеки Windows или Linux GUI из Lua, как если бы вы были на C.