wxFormBuilder是一個(gè)開(kāi)源,跨平臺(tái)的所見(jiàn)即所得的圖形用戶(hù)界面生成器,可以翻譯wxWidget GUI設(shè)計(jì)成C++,Python和PHP或XML格式。 簡(jiǎn)要介紹 wxFormBuilder 的用法是在這里給出。
首先 wxFormBuilder 的所有最新版本需要從http://sourceforge.net/projects/wxformbuilder/.下載和從安裝。在打開(kāi)應(yīng)用程序時(shí),出現(xiàn)空白的灰色區(qū)域?yàn)樾马?xiàng)目的中心。
給該項(xiàng)目一個(gè)合適的名字,并選擇Python作為代碼生成語(yǔ)言。 在對(duì)象屬性窗口,如圖下圖 −

然后從組件面板“表單”選項(xiàng)卡中,選擇畫(huà)面。

從“Layouts”選項(xiàng)卡中添加一個(gè)垂直wxBoxSizer。
在框中添加必要的控制并使用合適的標(biāo)題。這里,一個(gè)靜態(tài)文本(標(biāo)簽),兩個(gè)TextCtrl對(duì)象(文本框)和一個(gè)wxButton對(duì)象相加。該框架看起來(lái)像下面的圖片 -

啟用擴(kuò)展和拉伸在這三個(gè)控件。 在對(duì)象的屬性為wxButton對(duì)象指定一個(gè)函數(shù) findsquare()來(lái)處理 OnButtonClick事件。
保存該項(xiàng)目,然后按F8鍵生成 Python代碼開(kāi)發(fā)的GUI。讓生成的文件命名為Demo.py
在可執(zhí)行Python腳本,導(dǎo)入demo.py并定義FindSquare()函數(shù)。聲明Application對(duì)象并啟動(dòng)主事件循環(huán)。以下是可執(zhí)行代碼 -
import wx
#import the newly created GUI file
import demo
class CalcFrame(demo.MyFrame1):
def __init__(self,parent):
demo.MyFrame1.__init__(self,parent)
def FindSquare(self,event):
num = int(self.m_textCtrl1.GetValue())
self.m_textCtrl2.SetValue (str(num*num))
app = wx.App(False)
frame = CalcFrame(None)
frame.Show(True)
#start the applications
app.MainLoop()
上面的代碼產(chǎn)生下面的輸出 −
