這篇文章是對wxPython官網(wǎng)第二個"Hello World"的demo代碼的逐行解釋,不過為方便初學(xué)者做了小部分改動,勉強算對wxPython的入門了解。
一、環(huán)境與工具本機:Windows10 64位
Python 3.5.2
wxPython 4.0.0b2
IDE:Pycharm Professional 2017.2.3
二、代碼解釋# !/usr/bin/env python # _*_ coding:utf-8 _*_ import wx """ frame(窗口):帶標(biāo)題和邊框的最頂層窗體 panel(面板):容器類,提供空間放其他組件,包括其他panel """ class HelloFrame(wx.Frame): def __init__(self, *args, **kw): super(HelloFrame, self).__init__(*args, **kw) # 創(chuàng)建一個Panel實例 pn1 = wx.Panel(self) # 在pn1上創(chuàng)建一個靜態(tài)文本組件(StaticText) # +label表示要顯示的文本內(nèi)容 # +pos表示文本顯示位置 st = wx.StaticText(pn1, label="A simple wxPython demo!", pos=(25, 25)) # 設(shè)置文本內(nèi)容字號并粗體顯示 font = st.GetFont() font.PointSize += 10 font = font.Bold() st.SetFont(font) # 創(chuàng)建菜單欄 self.makeMenuBar() # 創(chuàng)建狀態(tài)欄 self.CreateStatusBar() # 設(shè)置狀態(tài)欄要顯示的文本內(nèi)容 self.SetStatusText("Ready to update to Hello World v3.0!") def makeMenuBar(self): # 創(chuàng)建菜單對象fileMenu(菜單欄主選項1) fileMenu = wx.Menu() # 在fileMenu中添加子項createItem # +item表示子項 # +helpString表示對子項的說明,當(dāng)鼠標(biāo)移動到子項上時,會在狀態(tài)欄顯示 # ...語法允許用戶鍵盤操作觸發(fā)子項 createItem = fileMenu.Append(wx.ID_ANY, item=u"新建文件(N)... Ctrl-H", helpString="創(chuàng)建一個新的文件") # 在各子項中添加起分隔作用的橫線 fileMenu.AppendSeparator() # 在fileMenu中添加子項exitItem exitItem = fileMenu.Append(wx.ID_EXIT, item=u"退出") # 創(chuàng)建菜單對象helpMenu(菜單欄主選項2) helpMenu = wx.Menu() # 在fileMenu中添加子項aboutItem aboutItem = helpMenu.Append(wx.ID_ABOUT, item=u"關(guān)于") # 創(chuàng)建菜單欄 menuBar = wx.MenuBar() # 添加各個菜單欄主選項到菜單欄中 # "&"后的首字母+"alt"鍵觸發(fā)菜單選項。該首字母會以下劃線著重顯示,按住alt鍵即能看見。 menuBar.Append(fileMenu, u"文件(&F)") menuBar.Append(helpMenu, u"幫助(&H)") # 添加菜單欄到窗口 self.SetMenuBar(menuBar) # 將主菜單的所有子項綁定動作 self.Bind(wx.EVT_MENU, self.OnCreate, source=createItem) self.Bind(wx.EVT_MENU, self.OnAbout, source=aboutItem) self.Bind(wx.EVT_MENU, self.OnExit, source=exitItem) def OnExit(self, event): # 關(guān)閉窗口 self.Close(True) def OnCreate(self, event): wx.MessageBox(u"創(chuàng)建文件成功") def OnAbout(self, event): # MessageBox(message, caption=MessageBoxCaptionStr, style=OK|CENTRE, parent=None, x=DefaultCoord, y=DefaultCoord) # +調(diào)用message()方法將會彈出一個對話窗口 # +message表示對話窗口顯示的正文信息 # +caption表示對話窗口的標(biāo)題 # +style表示對話窗口的按鈕和圖標(biāo)樣式 wx.MessageBox("Hello World v2.0 producted by wxPython.", "About", wx.OK | wx.ICON_INFORMATION) if __name__ == "__main__": app = wx.App() frame = HelloFrame(None, title="Hello World v2.0") frame.Show() app.MainLoop()
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/41219.html
摘要:可以脫離語言環(huán)境獨立運行就像一本英文書,我找一個翻譯,給他點時間,把英文書翻譯成中文的,這就是編譯型語言解釋型語言有良好的平臺兼容性,在任何環(huán)境中都可以運行,前提是安裝了解釋器虛擬機。就像還是一本英文書,我看一句讓他給我解釋一句。 寫在前面 隨著大數(shù)據(jù)、人工智能這類詞匯撲向我們,python這個早在1989就已經(jīng)出現(xiàn)的語言終于高調(diào)回歸,為了更好的學(xué)習(xí)python 我們先來了解下它的前世...
摘要:零預(yù)備知識字符編碼計算機只能處理數(shù)字,所以為文本需要轉(zhuǎn)化為數(shù)字才能被計算機處理,計算機里八個比特作為一個字節(jié),這是數(shù)據(jù)的存儲基礎(chǔ)單位。 零、預(yù)備知識 0.1 字符編碼計算機只能處理數(shù)字,所以為文本需要轉(zhuǎn)化為數(shù)字才能被計算機處理,計算機里八個比特(bit)作為一個字節(jié)(byte),這是數(shù)據(jù)的存儲基礎(chǔ)單位。計算機為了處理文本,有以下三種編碼方式: ASCII碼:只有大小寫英文字母,數(shù)字...
摘要:最近開始用編輯器來編寫代碼了,安裝了庫之后,發(fā)現(xiàn)沒有代碼提示,寫起來很是不爽。。。幾經(jīng)周折之后發(fā)現(xiàn)還是得配置一下,因為自己也找了蠻久,所以記錄一下,希望可以幫到打擊其他第三方庫的配置也是類似。 最近開始用 PyCharm 編輯器來編寫 python 代碼了,安裝了 GUI 庫 wxPython 之后,發(fā)現(xiàn)沒有代碼提示,寫起來很是不爽。。。幾經(jīng)周折之后發(fā)現(xiàn)還是得配置一下,因為自己也找了蠻...
摘要:代碼如散文作為一門計算機語言來說,會有下面的特點。而則通過這些擴展庫將眾多的開源函數(shù)庫連接在一起,是名符其實的膠水語言。下面是我們將會在后面用到的代碼在線查看一步步搭建物聯(lián)網(wǎng)系統(tǒng)圖靈電子書版一步步搭建物聯(lián)網(wǎng)系統(tǒng) Python 代碼如散文 showImg(http://designiot.phodal.com/images/python.png); 作為一門計算機語言來說,Pytho...
摘要:在這個窗口之上,可以添加各種輸入框按鈕文本等,可以增加對各種動作的處理。事件要與特定的控件相綁定,比如按鈕有點擊事件,輸入框有按鍵事件,窗體有關(guān)閉事件等。 在大多數(shù)時候,我們都在黑黢黢的控制臺里執(zhí)行 Python 腳本。這看起來很酷很 GEEK。但對于部分場景下的用戶來說,這樣就不大美觀和人性化了:我們需要交互更方便的圖形化產(chǎn)品,也就是 GUI (圖形用戶界面,Graphical Us...
閱讀 1978·2021-11-22 15:33
閱讀 3009·2021-11-18 10:02
閱讀 2622·2021-11-08 13:16
閱讀 1633·2021-10-09 09:57
閱讀 1378·2021-09-30 09:47
閱讀 2013·2019-08-29 13:05
閱讀 3076·2019-08-29 12:46
閱讀 1013·2019-08-29 12:19