2013-08-05 7 views
8

Najpierw pokażę wam przykład tego, co mówię:Jak mogę złożyć wniosek GUI w Lua

ja studiuje Lua za około tydzień, a ja jestem bardzo ciekawy w jaki sposób bym to zrobił. Zasadniczo (na razie i do celów edukacyjnych), po prostu chcę zrobić GUI z 2 przyciskami, 1, aby uruchomić określony (.exe), i jeden, aby opuścić GUI.

Czy to możliwe? Jak miałbym to zrobić? Każda informacja byłaby świetna!

+3

Wszelkie opinie na temat wszystkich otrzymanych odpowiedzi są uzasadnione. Jeśli któryś z nich ci pomógł, powinieneś przynajmniej to zaakceptować. To właśnie sprawia, że ​​jakość SO jest wysoka. –

Odpowiedz

2

Czy sprawdziłeś numer wxLua? Jest to jedyna platforma GUI dla komputerów desktop, o której mam świadomość Lua.

3

Jeśli jesteś początkujący absolutną, czyli nie mają żadnego doświadczenia w programowaniu w innych językach programowania, rada ja nauczysz się Lua bardzo dobrze, nie próbując zadzierać z programowaniem GUI, co jest z natury znacznie trudniejsze. Kiedy będziesz dobrze rozumieć Luę, przejdź do zestawu narzędzi GUI dla Lua. Używam wxLua, więc mogę tylko dać ci kilka wskazówek na ten temat.

Ponieważ nie jest to "rodzimy" zestaw narzędzi Lua, ale jest "wiążący" dla dobrze znanej wieloplatformowej biblioteki GUI (wxWidgets), musisz zapoznać się zarówno z dokumentacją wxLua, jak i podręcznikiem wxWidgets (przynajmniej w pewnym stopniu) .

Dystrybucja binarna wxLua zawiera wszystko, co jest potrzebne do jej użycia (nie potrzebujesz nawet osobnego interpretera Lua, ma swoją własną) i zawiera wiele przykładowych aplikacji.

Poniższy scenariusz jest trywialnym przybliżeniem tego, co chcesz zrobić, ale (powtarzam) powinieneś naprawdę nauczyć się podstaw Lua przed przystąpieniem do programowania GUI.

local wx = require 'wx' 

local PATH_TO_APPLICATION = [[notepad.exe]]  -- Windows assumed for sake of exemplification 

local ans = wx.wxMessageBox("Should the application be started?", "Hi there!", 
    wx.wxOK + wx.wxCANCEL + wx.wxICON_QUESTION) 
if ans == wx.wxOK then 
    wx.wxExecute(PATH_TO_APPLICATION) 
end 

Aby uruchomić poprzedni skrypt, należy upewnić się, że wxLua jest poprawnie zainstalowany w ścieżce wyszukiwania interpretera. W przeciwnym razie musisz użyć interpretera wxlua.exe dołączonego do dystrybucji.

Należy również zauważyć, że interpreter wxLua (najnowsze wydanie stabilne wxLua) działa z wersją Lua 5.1, więc staraj się nie używać funkcji Lua 5.2 w swoich skryptach. Podstawowa składnia i semantyka Lua są prawie takie same, ale istnieją pewne drobne różnice, a Lua 5.2 ma kilka dodatkowych funkcji. Uważaj więc na swoją ścieżkę edukacyjną.

1

IUP powinien być najprostszym sposobem na stworzenie GUI z Lua. Jednak przy próbie zainstalowania IUP na Linuksie spotkasz mur z cegły. Musisz mieć nadzieję, że ktoś go wcześniej zainstalował lub ktoś przygotował pakiet instalacyjny dla twojej wersji Linuksa. Jeśli chcesz, aby inne osoby mogły uruchomić twój kod później, będzie to praktycznie niemożliwe, aby ustawić je w rozsądny sposób. To jest naprawdę błąd zespołu Lua/Iup, ponieważ nie mam problemu z używaniem Iup z języka programowania C i wydaje się, że jest on kompatybilny z wieloma wersjami Linuksa. Jest to przeciwieństwo zwykłej sytuacji, w której bardzo łatwo jest ustawić język skryptowy i trudno jest ustawić język niskiego poziomu, taki jak C.

Powiązane problemy