Python初學筆記之wxPython對話方塊

2021-06-28 13:49:35 字數 2867 閱讀 5541

python的語法手冊已經過了好幾遍了,可一直都沒有機會運用於實踐中,結果過了一段時間之後又遺忘了,為了避免周而復始的去啃語法,我還是把比較有意思的地方記錄一下,不多說了,先貼源**

#!/usr/bin/env python

#coding: utf-8

import wx

import images

class *******frame(wx.frame):

def __init__(self, parent, id):

wx.frame.__init__(self, parent, id, '*******s',

size=(300, 200))

panel = wx.panel(self)

panel.setbackgroundcolour('white')

statusbar = self.createstatusbar() #1 建立狀態列

******* = self.create*******() #2 建立工具欄

*******.add******tool(wx.newid(), images.getnewbitmap(),

'new', "long help for 'new'") #3 給工具欄增加乙個工具

*******.realize() #4 準備顯示工具欄

menubar = wx.menubar() # 建立選單欄

# 建立兩個選單

menu1 = wx.menu()

menu2 = wx.menu()

#6 建立選單的專案

self.setmenubar(menubar) # 在框架上附上選單欄

self.bind(wx.evt_close, self.onclose)

def onclose(self, event):

dlg = wx.messagedialog(none, 'is this the coolest thing ever!',

'messagedialog', wx.yes_no | wx.icon_question)

result = dlg.showmodal()

if result == wx.id_yes :

dlg.destroy()

self.destroy()

if __name__ == '__main__':

frame = *******frame(parent=none, id=-1)

frame.show()

開頭兩行裡,第一行用於在unix環境下得到python的執行路徑,第二行指定utf-8編碼,用於新增中文支援(也可以是gbk);執行此python指令碼,會彈出乙個帶選單項的窗體,事件處理與函式繫結並沒有完全實現,不過在關閉視窗是會出現對話方塊提示。

python裡面有三類較為基礎的對話方塊,分別是訊息對話方塊(wx.messagedialog)、文字輸入對話方塊(wx.textentrydialog)和列表選擇對話方塊(wxsin,**中給出的訊息提示對話方塊

def onclose(self, event):

dlg = wx.messagedialog(none, 'is this the coolest thing ever!',

'messagedialog', wx.yes_no | wx.icon_question)

result = dlg.showmodal()

if result == wx.id_yes :

dlg.destroy()

self.destroy()

wx.messagedialog

引數如下:

wx.messagedialog(parent, message,

caption=」message box」,

style=wx.ok | wx.cancel,

pos=wx.defaultposition)

引數說明:

parent

: 對話方塊的父視窗,如果對話方塊是頂級的則為

none

。message

: 顯示在對話方塊中的字串。

caption: 顯示在對話方塊標題欄上的字串。

style: 對話方塊中按鈕的樣式。

pos: 對話方塊出現的位置。

showmodal()方法將對話方塊以模式框架的方式顯示,對於wx.messagedialog, showmodal()返回值是下面常量之一: wx.id_yes, wx.id_no, wx.id_cancel, wx.id_ok。

類似的,文字輸入控制項用法:

dlg = wx.textentrydialog(none, "who is burried in grant's tomb?",

'a question', 'cary grant')

if dlg.showmodal()==wx.id_ok :

response =dlg.getvalue()

列表選擇控制項用法:

dlg = wx.singlechoicedialog(none,

"what version of python are you using?",

'single choice dialog',

['1.5.2','2.0','2.1.3','2.2','2.3.1'])

if dlg.showmodal()==wx.id_ok:

response = dlg.getstringselection()

20170605初學筆記之python

csv文字格式的讀寫 對元組中的資料進行集體處理 ctypes庫的使用 python函式的效能分析 操作符的使用 讀寫函式由python自帶庫csv提供,無論讀寫,均需要建立讀寫物件。以下為 import csv class csvapi object def init self,file self...

Python初學筆記

工作需要,要接觸python的程式,學習一下 使用的3.2版本 話說比2.5變化還真多 print都變了 總體感覺,py比較perl來說,特點還是非常之強烈的 1 py可以自動字串複製 x 3 x 3 333 2 py是強型別變數,和perl不同,型別變數不能混用 3 字串連線 號和join等str...

Python 初學筆記

def to celsius t return t 32.0 5.0 9.0 在函式名後用冒號,不是等號。函式實際定義在下一行,該行縮排4個空格,並以return 標記。str t 將t轉換為字串 12 str 34 56 123456 在字串兩端的單引號或者雙引號分別替代成3個,即可擴充套件為多行...