wxPython使用指導

一、wxPython簡介

這是Python一個非常不錯的GUI開發庫,免費、開源、跨平台,可用組件眾多,藉助這些組件,程序員可以快速創建完整、功能全面的用戶界面,因此應用非常廣泛

 

二、安裝方式:

pip install wxpython

 

三、wxPython簡單實現

import wx
app = wx.App()
#創建一個頂級窗口作為wx.Frame類的對象,設置窗體的大小
window = wx.Frame(None, title = "wxPython Frame", size = (300,200))
#將一個Panel對象放入框架中
panel = wx.Panel(window)
#添加一個StaticText對象以在窗口內的所需位置顯示'Hello World',並設置位置
label = wx.StaticText(panel, label = "Hello World", pos = (50,50))
#通過show()方法激活框架窗口
window.Show(True)
#輸入Application對象的主事件循環
app.MainLoop()

顯示展示結果:

 

 

 四、wxPython GUI生成器的使用(wxFormBuilder):

安裝步驟://sourceforge.net/projects/wxformbuilder/

可根據界面化工具生成對應的frame、button、lable、text等ui組件,並自動生成python腳本

 

 

 

 導入pycharm內,補充對應的按鈕事件和方法,可簡化代碼的編寫

 

 

 

 

五、wx主要組件

1、frame(窗口)

parent = None #父元素,假如為None,代表頂級窗口

id = None #組件的標識,唯一,假如id為-1代表系統分配id

title = None #窗口組件的名稱

pos = None #組件的位置,就是組件左上角點距離父組件或者桌面左和上的距離

size = None #組件的尺寸,寬高

style = None #組件的樣式

name = None #組件的名稱,也是用來標識組件的,但是用於傳值

2、TextCtrl(文本框)

parent = None #父元素,假如為None,代表頂級窗口

id = None #組件的標識,唯一,假如id為-1代表系統分配id

value = None   #文本框當中的內容

         GetValue #獲取文本框的值

         SetValue #設置文本框的值

pos = None #組件的位置,就是組件左上角點距離父組件或者桌面左和上的距離

size = None #組件的尺寸,寬高

style = None #組件的樣式

validator = None #驗證

name = None #組件的名稱,也是用來標識組件的,但是用於傳值

3、Button(按鈕)

parent = None #父元素,假如為None,代表頂級窗口

id = None #組件的標識,唯一,假如id為-1代表系統分配id

lable = None #按鈕的標籤

pos = None #組件的位置,就是組件左上角點距離父組件或者桌面左和上的距離

size = None #組件的尺寸,寬高

style = None #組件的樣式

validator = None #驗證

name = None #組件的名稱,也是用來標識組件的,但是用於傳值

4、事件綁定

定義事件函數

def openfile(event):
  path = path_text.GetValue()
  with open(path,"r",encoding="utf-8") as f: #encoding 設置文件打開時指定為utf8編碼,避免寫文件時出現編碼錯誤
    content_text.SetValue(f.read())

綁定出發事件的條件和組件

open_button.Bind(wx.EVT_BUTTON,openfile)

 

Tags: