wxPython – GUI生成器工具

wxPython – GUI生成器工具

通过手动编码创建一个好看的GUI可能是很乏味的。一个可视化的GUI设计工具总是很方便的。许多针对wxPython的GUI开发IDE是可用的。以下是其中的一些

  • wxFormBuilder
  • wxDesigner
  • wxGlade
  • BoaConstructor
  • gui2py

wxFormBuilder 是一个开源的、跨平台的WYSIWYG GUI生成器,它可以将wxWidget的GUI设计翻译成C++、Python、PHP或XML格式。这里对wxFormBuilder的用法做了一个简要介绍。

首先,最新版本的wxFormBuilder需要从http://sourceforge.net/projects/wxformbuilder/。 在打开应用程序时,会出现一个新的项目,中间是空白的灰色区域。

给这个项目取一个合适的名字,并选择Python作为代码生成语言。这是在对象属性窗口中完成的,如下图所示

wxPython - GUI生成器工具

然后从组件调色板的 “窗体 “选项卡中,选择框架。

wxPython - GUI生成器工具

从’Layouts’标签中添加一个垂直的wxBoxSizer。

wxPython - GUI生成器工具

在盒子里添加必要的控件,并加上适当的标题。这里,一个StaticText(标签),两个TextCtrl对象(文本框)和一个wxButton对象被添加。框架看起来就像下面的图片 –

wxPython - GUI生成器工具

在这三个控件上启用扩展和拉伸功能。在wxButton对象的属性中,为OnButtonClick事件分配一个函数f findsquare()。

wxPython - GUI生成器工具

保存项目并按F8键为开发的GUI生成Python代码。让生成的文件被命名为Demo.py

在可执行的Python脚本中,导入demo.py并定义FindSquare()函数。声明应用程序对象,并开始一个主事件循环。以下是可执行代码

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() 

上述代码产生了以下输出 —

wxPython - GUI生成器工具

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程