wxLua 有多简单?

wxLua 有多简单?其实不简单。因为调用 wxWidgets 本身就是件麻烦事。但是语言的力量是巨大的。我在 lua 下编写了一套名为 wxe (Lua wxWidgets Extension) 的库,调用这个库,我大大简化了 Lua 下的 GUI 编程。下面是一个例子:

 

编写这样的界面只需要不到 30 行代码(连空白行也算进去):

 

require "wxe"

frame = wxe.Frame("练习菜单栏", 600, 300)
frame:CreateStatusBar(1);

frame:SetMenuBar(wxe.MenuBar{{
    title="文件(&F)", menu={{
        title="打开(&O)\tCtrl-O",
        info="打开指定的文件"
    },{
        title="文件另存为(&A)...\tCtrl-Shift-A",
        info="保存文件到另外的位置"
    },"-",{
        title="你的性别(&G)",
        info="选择你的性别",
        menu={{
            title="男(&M)",
            info="你不是女的"
        },{
            title="女(&F)",
            info="你不是男的"
        }}
    }}}
})

frame:Show(true)

 

这样的效率可以说是相当高了。但令人遗憾的是因为 Lua 并非面向对象的语言,所以很多地方写起来不是很顺手。比如我想给创建的控件添加自定义的方法,以省掉一些参数。这在 Lua 下就做不到。我现在又把目光瞄向了 wxJS。JavaScript 是我最喜欢的语言了。

 

 

 

 

 

你可能感兴趣的:(wxLua 有多简单?)