1、靜態文本控件python
wx.StaticText(parent, id, label, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=0, name="staticText")算法
wx.StaticText構造函數的參數網絡
parent:父窗口部件。數據結構
id:標識符。使用-1能夠自動建立一個惟一的標識。app
label:你想顯示在靜態控件中的文本。框架
pos:一個wx.Point或一個Python元組,它是窗口部件的位置。ide
size:一個wx.Size或一個Python元組,它是窗口部件的尺寸。函數
style:樣式標記。工具
name:對象的名字,用於查找的須要。oop
其中樣式
wx.ALIGN_CENTER:靜態文本位於靜態文本控件的中心。
wx.ALIGN_LEFT:文本在窗口部件中左對齊。這是默認的樣式。
wx.ALIGN_RIGHT:文本在窗口部件中右對齊。
wx.ST_NO_AUTORESIZE:若是使用了這個樣式,那麼在使用了SetLabel()改變文本以後,靜態
文本控件不將自我調整尺寸。你應結合使用一個居中或右對齊的控件來保持對齊。
2、文本輸入控件
wx.TextCtrl的樣式
wx.TE_CENTER:控件中的文本居中。
wx.TE_LEFT:控件中的文本左對齊。默認行爲。
wx.TE_NOHIDESEL:文本始終高亮顯示,只適用於Windows。
wx.TE_PASSWORD:不顯示所鍵入的文本,代替以星號顯示。
wx.TE_PROCESS_ENTER:若是使用了這個樣式,那麼當用戶在控件內按下回車鍵時,一個文本
輸入事件被觸發。不然,按鍵事件內在的由該文本控件或該對話框管理。
wx.TE_PROCESS_TAB:若是指定了這個樣式,那麼一般的字符事件在Tab鍵按下時建立(通常意
味一個製表符將被插入文本)。不然,tab由對話框來管理,一般是控件間的切換。
wx.TE_READONLY:文本控件爲只讀,用戶不能修改其中的文本。
wx.TE_RIGHT:控件中的文本右對齊。
對於添加文本和移動插入點,該文本控件自動管理用戶的按鍵和鼠標事件。對於該文本控件可
用的命令控制組合說明以下:
<ctrl-x>:剪切
<ctrl-c>:複製
<ctrl-v>:粘貼
<ctrl-z>:撤消
AppendText(text):在尾部添加文本。
Clear():重置控件中的文本爲「」。而且生成一個文本更新事件。
EmulateKeyPress(event):產生一個按鍵事件,插入與事件相關聯的控制符,就如同實際的按
鍵發生了。
GetInsertionPoint()
SetInsertionPoint(pos)
SetInsertionPointEnd():獲得或設置插入點的位置,位置是整型的索引值。控件的開始位置
是0。
GetRange(from, to):返回控件中位置索引範圍內的字符串。
GetSelection()
GetStringSelection()
SetSelection(from, to):GetSelection()以元組的形式返回當前所選擇的文本的起始位置的
索引值(開始,結束)。GetStringSelection()獲得所選擇的字符串。SetSelection(from,
to)設置選擇的文本。
GetValue()
SetValue(value):SetValue()改變控件中的所有文本。GetValue()返回控件中全部的字符串
。
Remove(from, to):刪除指定範圍的文本。
Replace(from, to, value):用給定的值替換掉指定範圍內的文本。這能夠改變文本的長度。
WriteText(text):相似於AppendText(),只是寫入的文本被放置在當前的插入點。
3、多行文本控件 wx.TE_MULTILINE
wx.HSCROLL:若是文本控件是多行的,而且若是該樣式被聲明瞭,那麼長的行將不會自動換行,並顯示水平滾動條。該選項在GTK+中被忽略。
wx.TE_AUTO_URL:若是豐富文本選項被設置而且平臺支持的話,那麼當用戶的鼠標位於文本中的一個URL上或在該URL上敲擊時,這個樣式將致使一個事件被生成。
wx.TE_DONTWRAP:wx.HSCROLL的別名。
wx.TE_LINEWRAP:對於太長的行,以字符爲界換行。某些操做系統可能會忽略該樣式。
wx.TE_MULTILINE:文本控件將顯示多行。
wx.TE_RICH:用於Windows下,豐富文本控件用做基本的窗口部件。這容許樣式文本的使用。
wx.TE_RICH2:用於Windows下,把最新版本的豐富文本控件用做基本的窗口部件。
wx.TE_WORDWRAP:對於太長的行,以單詞爲界換行。許多操做系統會忽略該樣式。
4、建立字體
wx.Font(pointSize, family, style, weight, underline=False,
faceName="", encoding=wx.FONTENCODING_DEFAULT)
wx.DECORATIVE:一個正式的,老的英文樣式字體。
wx.DEFAULT:系統默認字體。
wx.MODERN:一個單間隔(固定字符間距)字體。
wx.ROMAN:serif字體,一般相似於Times New Roman。
wx.SCRIPT:手寫體或草寫體
wx.SWISS:sans-serif字體,一般相似於Helvetica或Arial。
style參數指明字體的是否傾斜,它的值有:wx.NORMAL, wx.SLANT, 和 wx.ITALIC。一樣,weight參數指明字體的醒目程度,可選值有:wx.NORMAL, wx.LIGHT,或wx.BOLD。這些常量值的行爲根據它的名字就能夠知道了。underline參數僅工做在Windows系統下,若是取值爲True,則加下劃線,False爲無下劃線。
faceName參數指定字體名。
encoding參數容許你在幾個編碼中選擇一個,它映射內部的字符和字本顯示字符。編碼不是Unicode編碼,只是用於wxPython的不一樣的8位編碼。大多數狀況你可使用默認編碼。
5、響應文本事件
frame.Bind(wx.EVT_TEXT, frame.OnText, text)
EVT_TEXT:當控件中的文本改變時產生該事件。文本因用戶的輸入或在程序中使用SetValue()而被改變,都要產生該事件。
EVT_TEXT_ENTER:當用戶在一個wx.TE_PROCESS_ENTER樣式的文本控件中按下了回車鍵時,產生該事件。
EVT_TEXT_URL:若是在Windows系統上,wx.TE_RICH或wx.TE_RICH2樣式被設置了,而且wx.TE_AUTO_URL樣式也被設置了,那麼當在文本控件內的URL上發生了一個鼠標事件時,該事件被觸發。
EVT_TEXT_MAXLEN:若是使用SetMaxLength()指定了該控件的最大長度,那麼當用戶試圖輸入更長的字符串時,該事件被觸發。你可能會用這個,例如,這時給用戶顯示一個警告消息。
6、使用按鈕
1.文本按鈕
wx.Button(parent, id, label, pos, size=wxDefaultSize, style=0,
validator, name="button")
2.位圖按鈕
wx.BitmapButton(panel, -1, bmp, pos=(10, 20))
3.開關按鈕(toggle button)
wx.ToggleButton(panel, -1,u"開關", pos=(10, 150))
當你按下一個開關按鈕(toggle button)時,它將一直保持被按下的狀態直到你再次敲擊它。
在wx.ToggleButton與父類wx.Button之間只有丙個區別:
a、當被敲擊時,wx.ToggleButton發送一個EVT_TOGGLEBUTTON事件。
b、wx.ToggleButton有GetValue()和SetValue()方法,它們處理按鈕的二進制狀態。
4.通用按鈕
有幾個使用通用按鈕的緣由:
a、通用按鈕比本地按鈕具備更好的跨平臺的外觀。另外一方面,通用按鈕可能在具體的系統上看起來與本地按鈕有些微的不一樣。
b、使用通用按鈕,你對它的外觀有更多的控制權,而且能改變屬性,如3D斜面的寬度和顏色,而這對於本地控件多是不容許的。
c、通用按鈕類容許特性的合併,而wxWidget按鈕不行。好比GenBitmapTextButton容許文本標籤和位圖的組合,GenBitmapToggleButton實現一個位圖切換按鈕。
d、若是你正在建立一個按鈕類,使用通用按鈕是較容易的。因爲其代碼和參數是用Python寫的,因此當建立一個新的子類的時候,對於檢查和覆蓋,它們的可用性更好。
滑塊(slider)
滑塊是一個窗口部件,它容許用戶經過在該控件的尺度內拖動指示器來選擇一個數值。在wxPython中,該控件類是wx.Slider,它包括
了滑塊的當前值的只讀文本的顯示。
wx.Slider(parent, id, value, minValue, maxValue,
pos=wxDefaultPosition, size=wx.DefaultSize,
style=wx.SL_HORIZONTAL, validator=wx.DefaultValidator,
name="slider")
wx.Slider的樣式
wx.SL_AUTOTICKS:若是設置這個樣式,則滑塊將顯示刻度。刻度間的間隔經過SetTickFreq方法來控制。
wx.SL_HORIZONTAL:水平滑塊。這是默認值。
wx.SL_LABELS:若是設置這個樣式,那麼滑塊將顯示兩頭的值和滑塊的當前只讀值。有些平臺可能不會顯示當前值。
wx.SL_LEFT:用於垂直滑塊,刻度位於滑塊的左邊。
wx.SL_RIGHT:用於垂直滑塊,刻度位於滑塊的右邊。
wx.SL_TOP:用於水平滑塊,刻度位於滑塊的上部。
wx.SL_VERTICAL:垂直滑塊。
GetRange()
SetRange(minValue, maxValue):設置滑塊的兩端值。
GetTickFreq()
SetTickFreq(n, pos):使用參數n設置刻度的間隔。參數pos沒有被使用,可是它仍然是必要的,將它設置爲1。
GetLineSize()
SetLineSize(lineSize):設置你每按一下方向鍵,滑塊所增長或減小的值。
GetPageSize()
SetPageSize(pageSize):設置你每按一下PgUp或PgDn鍵,滑塊所增長或減小的值。
GetValue()
SetValue(value):設置滑塊的值。
微調控制器
wx.SpinCtrl
wx.SpinCtrl(parent, id=-1, value=wx.EmptyString,
pos=wx.DefaultPosition, size=wx.DefaultSize,
style=wx.SP_ARROW_KEYS, min=0, max=100, initial=0,
name="wxSpinCtrl")
進度條 wx.Gauge
wx.Gauge(parent, id, range, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.GA_HORIZONTAL,
validator=wx.DefaultValidator, name="gauge")
複選框 wx.CheckBox
wx.CheckBox(parent, id, label, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=0, name="checkBox")
label參數是複選框的標籤文本。複選框沒有樣式標記,可是它們產生屬於本身的獨一無二的命令事件:EVT_CHECKBOX。wx.CheckBox的開關狀
態可使用GetValue()和SetValue(state)方法來訪問,而且其值是一個布爾值。IsChecked()方法等同於GetValue()方法,只是爲了讓代碼看起
來更易明白。
單選按鈕(radio button)
wx.RadioButton
wx.RadioBox
wx.RadioButton(parent, id, label, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=0,
validator=wx.DefaultValidator, name="radioButton")
wx.RadioBox(parent, id, label, pos=wx.DefaultPosition,
size=wxDefaultSize, choices=None, majorDimension=0,
style=wx.RA_SPECIFY_COLS, validator=wx.DefaultValidator,
name="radioBox")
wx.RadioBox的方法
EnableItem(n, flag):flag參數是一個布爾值,它用於使索引爲n的按鈕有效或無效。要使整個框當即有效,使用Enable()。
FindString(string):根據給定的標籤返回相關按鈕的整數索引值,若是標籤沒有發現則返回-1。
GetCount():返回框中按鈕的數量。
GetItemLabel(n)
SetItemLabel(n, string):返回或設置索引爲n的按鈕的字符串標籤。
GetSelection()
GetStringSelection()
SetSelection(n)
SetStringSelection( string):GetSelection() 和 SetSelection()方法處理當前所選擇的單選按鈕的整數索引。GetStringSelection()返回當前所選擇的按鈕的字符串標籤,SetStringSelection()改變所選擇的按鈕的字符串標籤爲給定值。沒有set*()產生EVT_RADIOBOX事件。
ShowItem(item, show):show參數是一個布爾值,用於顯示或隱藏索引爲item的按鈕。
列表框wx.ListBox
wx.ListBox(parent, id, pos=wx.DefaultPosition,
size=wx.DefaultSize, choices=None, style=0,
validator=wx.DefaultValidator, name="listBox")
wx.LB_EXTENDED:用戶能夠經過使用shift並敲擊鼠標來選擇必定範圍內的連續的選項,或使用等同功能的按鍵。
wx.LB_MULTIPLE:用戶能夠一次選擇多個選項(選項能夠是不連續的)。實際上,在這種狀況下,列表框的行爲就像是一組複選框。
wx.LB_SINGLE:用戶一次只能選一個選項。實際上,在這種狀況下,列表框的行爲就像是一組單選按鈕。
列表框的滾動條類型樣式
wx.LB_ALWAYS_SB:列表框將始終顯示一個垂直的滾動條,無論有沒有必要。
wx.LB_HSCROLL:若是本地控支持,那麼列表框在選擇項太多時,將建立一個水平滾動條。
wx.LB_HSCROLL:列表框只在須要的時候顯示一個垂直的滾動條。這是默認樣式。
還有一個樣式wx.LB_SORT,它使得列表中的元素按字母順序排序
列表框的方法
Append(item):把字符串項目添加到列表框的尾部。
Clear():清空列表框。
Delete(n):刪除列表框中索引爲n的項目。
Deselect(n):在多重選擇列表框中,致使位於位置n的選項取消選中。在其它樣式中不起做用。
FindString(string):返回給定字符串的整數位置,若是沒有發現則返回-1。
GetCount():返回列表中字符串的數量。
GetSelection()
SetSelection(n, select)
GetStringSelection()
SetStringSelection(string, select)
GetSelections():GetSelection()獲得當前選擇項的整數索引(僅對於單選列表)。對於多選列表,使用GetSelections()來返回包含所選項目的整數位置的元組。對於單選列表,GetStringSelection()返回當前選擇的字符串。相應的set方法使用布爾值參數select設置指定字符串或索引選項的狀態。使用這種方法改變選擇不觸發EVT_LISTBOX事件。
GetString(n)
SetString(n, string):獲得或設置位置n處的字符串。
InsertItems(items, pos):插入參數items中的字符串列表到該列表框中pos參數所指定的位置前。位置0表示把項目放在列表的開頭。
Selected(n):返回對應於索引爲n的項目的選擇狀態的布爾值。
Set(choices):從新使用choices的內容設置列表框。
合併複選框和列表框 wx.CheckListBox
下拉 wx.Choice
wx.Choice(parent, id, pos=wx.DefaultPosition,
size=wx.DefaultSize, choices=None, style=0,
validator=wx.DefaultValidator, name="choice")
wx.Choice沒有專門的樣式,可是它有獨特的命令事件:EVT_CHOICE。幾乎表7.14中全部適用於單選列表框的方法都適用於wx.Choice對象。
文本域與列表合併在一塊兒 wx.ComboBox
wx.ComboBox(parent, id, value="", pos=wx.DefaultPosition,
size=wx.DefaultSize, choices, style=0,
validator=wx.DefaultValidator, name="comboBox")
經常使用控件總結
一、對於靜態文本標籤的顯示,你可使用wx.StaticText類。還有一個徹底用wxPython實現的版本,名爲wx.lib.stattext.GenStaticText。
二、若是你須要一個控件以讓用戶輸入文本,那麼使用類wx.TextCtrl。它容許單行和多行的輸入,還有密碼掩飾和其它的功用。若是本地控支持它,你可使用wx.TextCtrl來獲得樣式文本。樣式是wx.Text-Attr類的實例,wx.Font包含字體信息。對於全部的系統,你可使用類wx.stc.StyledTextCtrl(它是wxPython對開源Scintilla文本組件的封裝)在一個可編輯的文本組件中實現顏色和字體樣式。
三、建立按鈕,使用wx.Button類,它也有一個通用版wx.lib.buttons.GenButton。按鈕可使用位圖來代替一個文本標籤(wx.BitmapButton),或在按下和未按下之間有一個開關狀態。還有一個等價於位圖和開關按鈕的通用版,它比標準版有更全面的特性。
四、有一些方法用於選擇或顯示數字值。你可使用wx.Slider類來顯示一個垂直或水平的滑塊。wx.SpinCtrl顯示一個可使用上下按鈕來改變數字值的文本控件。wx.Gauge控件顯示一個進度條指示器。
五、你能夠從一系列的控件中選出讓用戶從列表選項做出選擇的最佳控件,最佳控件所應考慮的條件是選項的數量,用戶可否多選和你想使用的屏幕空間的總量。複選框使用wx.CheckBox類。這兒有兩個方法去獲得單選按鈕:wx.RadioButton給出單個單選按鈕,而wx.RadioBox給出顯示在一塊兒的一組按鈕。這兒有幾個列表顯示控件,它們的用法類似。列表框的建立使用wx.ListBox,而且你可使用wx.CheckListBox來增長複選框。對於更簡潔的下拉式,使用wx.Choice. wx.ComboBox合併了列表和文本控件的特性。
合併複選框和列表框 wx.CheckListBox
下拉 wx.Choice
wx.Choice(parent, id, pos=wx.DefaultPosition,
size=wx.DefaultSize, choices=None, style=0,
validator=wx.DefaultValidator, name="choice")
wx.Choice沒有專門的樣式,可是它有獨特的命令事件:EVT_CHOICE。幾乎表7.14中全部適用於單選列表框的方法都適用於wx.Choice對象。
文本域與列表合併在一塊兒 wx.ComboBox
wx.ComboBox(parent, id, value="", pos=wx.DefaultPosition,
size=wx.DefaultSize, choices, style=0,
validator=wx.DefaultValidator, name="comboBox")
框架 wx.Frame
wx.Frame(parent, id=-1, title="", pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE,
name="frame")
框架的形狀和尺寸標記
wx.FRAME_NO_TASKBAR:一個徹底標準的框架,除了一件事:在Windows系統和別的支持這個特性的系統下,它不顯示在任務欄中。當最小化時,該框架圖標化到桌面而非任務欄。
wx.FRAME_SHAPED:非矩形的框架。框架的確切形狀使用SetShape()方法來設置。窗口的形狀將在本章後面部分討論。
wx.FRAME_TOOL_WINDOW:該框架的標題欄比標準的小些,一般用於包含多種工具按鈕的輔助框架。在Windows操做系統下,工具窗口將不顯示在任務欄中。
wx.ICONIZE:窗口初始時將被最小化顯示。這個樣式僅在Windows系統中起做用。
wx.MAXIMIZE:窗口初始時將被最大化顯示(全屏)。這個樣式僅在Windows系統中起做用。
wx.MINIMIZE:同wx.ICONIZE。
窗口漂浮行爲的樣式
wx.FRAME_FLOAT_ON_PARENT:框架將漂浮在其父窗口(僅其父窗口)的上面。(很明顯,要使用這個樣式,框架須要有一個父窗口)。其它的框架能夠遮蓋這個框架。
wx.STAY_ON_TOP:該框架將始終在系統中其它框架的上面。(若是你有多個框架使用了這個樣式,那麼它們將相互重疊,但對於系統中其它的框架,它們仍在上面。)
裝飾窗口的樣式
wx.CAPTION:給窗口一個標題欄。若是你要放置最大化框、最小化框、系統菜單和上下文幫助,那麼你必須包括該樣式。
wx.FRAME_EX_CONTEXTHELP:這是用於Windows操做系統的,它在標題欄的右角放置問號幫助圖標。這個樣式是與wx.MAXIMIZE_BOX和WX.MINIMIZE_BOX樣式互斥的。它是一個擴展的樣式,而且必須使用兩步來建立,稍後說明。
wx.FRAME_EX_METAL:在Mac OS X上,使用這個樣式的框架有一個金屬質感的外觀。這是一個附加樣式,必須使用SetExtraStyle方法來設置。
wx.MAXIMIZE_BOX:在標題欄的標準位置放置一個最大化框。
wx.MINIMIZE_BOX:在標題欄的標準位置放置一個最小化框。
wx.CLOSE_BOX:在標題欄的標準位置放置一個關閉框。
wx.RESIZE_BORDER:給框架一個標準的能夠手動調整尺寸的邊框。
wx.SIMPLE_BORDER:給框架一個最簡單的邊框,不能調整尺寸,沒有其它裝飾。該樣式與全部其它裝飾樣式是互斥的。
wx.SYSTEM_MENU:在標題欄上放置一個系統菜單。這個系統菜單的內容與你所使用的裝飾樣式有關。例如,若是你使用wx.MINIMIZE_BOX,那麼系統菜單項就有「最小化」選項。
wx.Frame的公共屬性
GetBackgroundColor()
SetBackgroundColor(wx.Color):背景色是框架中沒有被其子窗口部件覆蓋住的那些部分的顏色。你能夠傳遞一個wx.Color或顏色名給設置方法。任何傳遞給須要顏色的wxPython方法的字符串,都被解釋爲對函數wx.NamedColour()的調用。
GetId()
SetId(int):返回或設置窗口部件的標識符。
GetMenuBar()
SetMenuBar(wx.MenuBar):獲得或設置框架當前使用的的菜單欄對象,若是沒有菜單欄,則返回None。
GetPosition()
GetPositionTuple()
SetPosition(wx.Point):以一個wx.Point或Python元組的形式返回窗口左上角的x,y的位置。對於頂級窗口,該位置是相對於顯示區域的座標,對於子窗口,該位置是相對於父窗口的座標。
GetSize()
GetSizeTuple()
SetSize(wx.Size):C++版的get*或set*方法被覆蓋。默認的get*或set*使用一個wx.Size對象。GetSizeTuple()方法以一個Python元組的形式返回尺寸。也能夠參看訪問該信息的另外的方法SetDimensions()。
GetTitle()
SetTitle(String):獲得或設置框架標題欄的字符串。
wx.Frame的方法
Center(direction=wx.BOTH):框架居中(注意,非美語的拼寫Centre,也被定義了的)。參數的默認值是wx.BoTH,在此狀況下,框是在兩個方向都居中的。參數的值如果wx.HORIZONTAL或wx.VERTICAL,表示在水平或垂直方向居中。
Enable(enable=true):若是參數爲true,則框架可以接受用戶的輸入。若是參數爲False,則用戶不能在框架中輸入。相對應的方法是Disable()。
GetBestSize():對於wx.Frame,它返回框架能容納全部子窗口的最小尺寸。
Iconize(iconize):若是參數爲true,最小化該框架爲一個圖標(固然,具體的行爲與系統有關)。若是參數爲False,圖標化的框架恢復到正常狀態。
IsEnabled():若是框架當前有效,則返回True。
IsFullScreen():若是框架是以全屏模式顯示的,則返回True,不然False。細節參看ShowFullScreen。
IsIconized():若是框架當前最小化爲圖標了,則返回True,不然False。
IsMaximized():若是框架當前是最大化狀態,則返回True,不然False。
IsShown():若是框架當前可見,則返回True。
IsTopLevel():對於頂級窗口部件如框架或對話框,老是返回True,對於其它類型的窗口部件返回False。
Maximize(maximize):若是參數爲True,最大化框架以填充屏幕(具體的行爲與系統有關)。這與敲擊框架的最大化按鈕所作的相同,這一般放大框架以填充桌面,可是任務欄和其它系統組件仍然可見。
Refresh(eraseBackground=True,
rect=None):觸發該框架的重繪事件。若是rect是none,那麼整個框架被重畫。若是指定了一個矩形區域,那麼僅那個矩形區域被重畫。若是eraseBackground爲True,那麼這個窗口的北影也將被重畫,若是爲False,那麼背景將不被重畫。
SetDimensions(x, y, width, height,
sizeFlags=wx.SIZE_AUTO):使你可以在一個方法調用中設置窗口的尺寸和位置。位置由參數x和y決定,尺寸由參數width和height決定。前四個參數中,若是有的爲-1,那麼這個-1將根據參數sizeFlags的值做相應的解釋。表8.6包含了參數sizeFlags的可能取值。
Show(show=True):若是參數值爲True,致使框架被顯示。若是參數值爲False,致使框架被隱藏。Show(False)等同於Hide()。
ShowFullScreen(show,
style=wx.FULLSCREEN_ALL):若是布爾參數是True,那麼框架以全屏的模式被顯示——意味着框架被放大到填充整個顯示區域,包括桌面上的任務欄和其它系統組件。若是參數是False,那麼框架恢復到正常尺寸。style參數是一個位掩碼。默認值wx.FULLSCREEN_ALL指示wxPython當全屏模式時隱藏全部窗口的全部樣式元素。後面的這些值能夠經過使用按位運算符來組合,以取消全屏模式框架的部分裝飾:wx.FULLSCREEN_NOBORDER, wx.FULLSCREEN_NOCAPTION,
wx.FULLSCREEN_NOMENUBAR,
wx.FULLSCREEN_NOSTATUSBAR,
wx.FULLSCREEN_NOTOOLBAR。
SetDimensions方法的尺寸標記
wx.ALLOW_MINUS_ONE:一個有效的位置或尺寸。
wx.SIZE_AUTO:轉換爲一個wxPython默認值。
wx.SIZE_AUTO_HEIGHT:一個有效的高度,或一個wxPython默認高度。
wx.SIZE_AUTO_WIDTH:一個有效的寬度,或一個wxPython默認寬度。
wx.SIZE_USE_EXISTING:使用現有的尺寸。
帶有滾動條的框架
wx.ScrolledWindow(parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.HSCROLL | wx.VSCROLL,
name="scrolledWindow")
MDI框架
wx.MDIParentFrame(parent, id, title, pos = wx.DefaultPosition,
size=wxDefaultSize,
style=wx.DEFAULT_FRAME_STYLE | wx.VSCROLL | wx.HSCROLL,
name="frame")
小型框架
wx.MiniFrame的構造函數等同於wx.Frame
wx.MiniFrame的樣式標記
wx.THICK_FRAME:在Windows或Motif下,使用粗邊框繪製框架。
wx.TINY_CAPTION_HORIZONTAL:代替wx.CAPTION而顯示一個較小的水平標題。
wx.TINY_CAPTION_VERTICAL:代替wx.CAPTION而顯示一個較小的垂直標題。
非矩形的框架 (略)
分割窗 wx.SplitterWindow
wx.SplitterWindow(parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.SP_3D,
name="splitterWindow")
parent是窗口部件的容器,pos是窗口部件在它的父容器中位置,size是它的尺寸。
要顯示兩個子窗口,使用SplitHorizontally (window1,window2,sashPosition=0)或SplitVertically(window1, window2, sashPosition=0)
分割窗的樣式
wx.SP_3D:繪製三維的邊框和分割條。這是一個默認樣式。
wx.SP_3DBORDER:繪製三維樣式的邊框,不包括分割條。
wx.SP_3DSASH:繪製三維樣式的分割條,不包括邊框。
wx.SP_BORDER:繪製窗口的邊框,非三維的樣式。
wx.SP_LIVE_Update:改變響應分割條移動的默認行爲。若是沒有設置這個標記,那麼當用戶拖動分割條時,將繪製一條線來標明分割條的新位置。子窗口的尺寸沒有被實際地更新,直到完成分割條拖放。若是設置了這個標記,那麼當分割條在被拖動時,子窗口的尺寸將不斷地變化。
wx.SP_NOBORDER:不繪製任何邊框。
wx.SP_NO_XP_THEME :在Windows XP系統下,分割條不使用XP的主題樣式,它給窗口一個更經典的外觀。
wx.SP_PERMIT_UNSPLIT:若是設置了這個樣式,那麼窗口始終不被分割。若是不設置,你能夠經過設置大於0的最小化的窗格尺寸來防止窗口被分割。
分割窗的事件類型
EVT_SPLITTER_DCLICK:當分割條被雙擊時觸發。捕捉這個事件不阻塞標準的不分割行爲,除非你調用事件的Veto()方法。
EVT_SPLITTER_SASH_POS_CHANGED:分割條的改變結束後觸發,但在此以前,改變將在屏幕上顯示(所以你能夠再做用於它)。這個事件可使用Veto()來中斷。
EVT_SPLITTER_SASH_POS_CHANGING:當分割條在被拖動時,不斷觸發該事件。這個事件能夠經過使用事件的Veto()方法來中斷,若是被中斷,那麼分割條的位置不被改變。
EVT_SPLITTER_UNSPLIT:變成未分割狀態時觸發。
模式對話框
import wx
class SubclassDialog(wx.Dialog):
def __init__(self):#初始化對話框
wx.Dialog.__init__(self, None, -1, 'Dialog Subclass',
size=(300, 100))
okButton = wx.Button(self, wx.ID_OK, "OK", pos=(15, 15))
okButton.SetDefault()
cancelButton = wx.Button(self, wx.ID_CANCEL, "Cancel",
pos=(115, 15))
if __name__ == '__main__':
app = wx.PySimpleApp()
app.MainLoop()
dialog = SubclassDialog()
result = dialog.ShowModal()#顯示模式對話框
if result == wx.ID_OK:
print "OK"
else:
print "Cancel"
dialog.Destroy()
警告框
方法一
import wx
if __name__ == "__main__":
app = wx.PySimpleApp()
# 方法一,使用類
dlg = wx.MessageDialog(None, "Is this explanation OK?",
'A Message Box',
wx.YES_NO | wx.ICON_QUESTION)
retCode = dlg.ShowModal()
if (retCode == wx.ID_YES):
print "yes"
else:
print "no"
dlg.Destroy()
方法二
retCode = wx.MessageBox("Is this way easier?", "Via Function",
wx.YES_NO | wx.ICON_QUESTION)
wx.MessageDialog類
wx.MessageDialog(parent, message, caption="Message box",
style=wx.OK | wx.CANCEL, pos=wx.DefaultPosition)
wx.CANCEL:包括一個cancel(取消)按鈕。這個按鈕有一個ID值wx.ID_CANCEL。
wx.NO_DEFAULT:在一個wx.YES_NO對話框中,No(否)按鈕是默認的。
wx.OK:包括一個OK按鈕,這個按鈕有一個ID值wx.ID_OK。
wx.YES_DEFAULT:在一個wx.YES_NO對話框中,Yes按鈕是默認的。這是默認行爲。
wx.YES_NO:包括Yes和No按鈕,各自的ID值分別是wx.ID_YES和wx.ID_NO。
wx.MessageDialog的圖標樣式
wx.ICON_ERROR:表示一個錯誤的圖標。
wx.ICON_EXCLAMATION:表示警告的圖標。
wx.ICON_HAND:同wx.ICON_ERROR。
wx.ICON_INFORMATION:信息圖標,字母i。
wx.ICON_QUESTION:問號圖標。
樣式wx.STAY_ON_TOP將對話框顯示在系統中任何其它窗口的上面,包括系統窗口和wxPython應
用程序窗口。
wx.MessageBox()函數
wx.MessageBox(message, caption="Message", style=wx.OK)
要在你的消息框中顯示大量的文本,你可使用wxPython特定的類
wx.lib.dialogs.ScrolledMessageDialog,它包含以下的構造函數:
wx.lib.dialogs.ScrolledMessageDialog(parent, msg, caption,
pos=wx.wxDefaultPosition, size=(500,300))
這個對話框不使用本地消息框控件,它根據別的wxPython窗口部件來建立一個對話框。它只顯
示一個OK按鈕,而且沒有更多的樣式信息。
wx.TextEntryDialog
wx.TextEntryDialog(parent, message, caption="Please enter text",
defaultValue="", style=wx.OK | wx.CANCEL | wx.CENTRE,
pos=wx.DefaultPosition)
下面這些是使用文本對話框的便利函數:
一、wx.GetTextFromUser()
二、wx.GetPasswordFromUser()
三、wx.GetNumberFromUser()
wx.GetTextFromUser(message, caption="Input text",
default_value="", parent=None)
這裏的message, caption, default_value, 和 parent與wx.TextEntryDialog的構造函數中的
同樣。若是用戶按下OK,該函數的返回值是用戶所輸入的字符串。若是用戶按下Cancel,該函
數返回空字符串。
若是你但願用戶輸入密碼,你可使用wx.GetPasswordFromUser()函數:
wx.GetPasswordFromUser(message, caption="Input text",
default_value="", parent=None)
這裏的參數意義和前面的同樣。用戶的輸入被顯示爲星號,若是用戶按下OK,該函數的返回值
是用戶所輸入的字符串。若是用戶按下Cancel,該函數返回空字符串。
最後,你可使用wx.GetNumberFromUser()要求用戶輸入一個數字:
wx.GetNumberFromUser(message, prompt, caption, value, min=0,
max=100, parent=None)
用對話框顯示選項列表 wx.SingleChoiceDialog
有兩個用於單選對話框的便利函數。第一個是wx.GetSingleChoice,它返回用戶所選的字符串
:
wx.GetSingleChoice(message, caption, aChoices, parent=None)
第二個是wx.GetSingleChoiceIndex:
wx.GetSingleChoiceIndex(message, caption, aChoices, parent=None)
這個函數與第一個有相同的參數,可是返回值不一樣。若是用戶按下OK,則返回值是所選項的索
引,若是用戶按下Cancel,則返回值是-1。
在對話框上顯示進度條
wx.ProgressDialog(title, message, maximum=100, parent=None,
style=wx.PD_AUTO_HIDE | wx.PD_APP_MODAL)
wx.ProgressDialog的樣式
wx.PD_APP_MODAL:若是設置了這個樣式,進度條對整個應用程序是模式的,這將阻塞全部的
用戶事件。若是沒有設置這個樣式,那麼進度條僅對它的父窗口是模式的。
wx.PD_AUTO_HIDE:進度條將自動隱藏自身直到它達到它的最大值。
wx.PD_CAN_ABORT:在進度條上放上一個Cancel按鈕,以便用戶中止。如何響應來自該對話框
的取消將在之後說明。
wx.PD_ELAPSED_TIME:顯示該對話框已經出現了多長時間。
wx.PD_ESTIMATED_TIME:顯示根據已花的時間、當前的計數值和計數器的最大值所估計出的完
成進度所需的總時間。
wx.PD_REMAINING_TIME:顯示要完成進度所估計的剩餘時間,或(所需總時間-已花時間)。
文件選擇對話框 wx.FileDialog
wx.FileDialog(parent, message="Choose a file", defaultDir="",
defaultFile="", wildcard="*.*", style=0,
pos=wx.DefaultPosition)
用於打開文件的對話框有兩個標記,它們進一步影響對話框的行爲。wx.HIDE_READONLY標記灰
化複選框,使用戶以只讀模式打開文件。wx.MULTIPLE標記使用戶能夠在一個目錄中選擇打開
多個文件。
使用文件對話框的函數:
wx.FileSelector(message, default_path="", default_filename="",
default_extension="", wildcard="*.*'', flags=0, parent=None,
x=-1, y=-1)
message, default_path, default_filename, 和 wildcard參數意義與構造函數的基本相同,
儘管參數的名字不一樣。flags參數一般被稱做style,default_extension參數是保存爲文件時
默認的後綴(若是用戶沒有指定後綴的狀況下)。若是用戶按下OK,返回值是字符串形式的路
徑名,若是用戶按下Cancel則返回一個空字符串。
選擇一個目錄
wx.DirDialog(parent, message="Choose a directory", defaultPath="",
style=0, pos = wx.DefaultPosition, size = wx.DefaultSize,
name="wxDirCtrl")
字體選擇對話框
wx.FontDialog(parent, data)
顏色對話框
wx.ColourDialog(parent, data=None)
使用戶可以瀏覽圖像
ImageDialog(parent, set_dir=None)
嚮導
wx.wizard.Wizard(parent, id=-1, title=wx.EmptyString,
bitmap=wx.NullBitmap, pos=wx.DefaultPosition)
EVT_WIZARD_CANCEL:當用戶按下Cancel按鈕時產生。該事件可使用Veto()來否決,這種狀況下,對話框將不會消失。
EVT_WIZARD_FINISHED :當用戶按下Finish按鈕時產生。
EVT_WIZARD_HELP:當用戶按下Help按鈕時產生。
EVT_WIZARD_PAGE_CHANGED:在頁面被切換後產生。
EVT_WIZARD_PAGE_CHANGING:當用戶已請求了一個頁面切換時產生,這時頁面尚未發生切換。這個事件能夠被否決(例如,若是頁面上有一個必須被填寫的字段)。
wx.wizard.WizardPageSimple類被看成一個面板同樣。它的構造函數使你能夠設置上一頁和下一頁,以下所示:
wx.wizard.WizardPageSimple(parent=None, prev=None, next=None)
若是你想在構造器中設置它們,你可使用SetPrev()和SetNext()方法。若是那樣太麻煩,你可使用wx.wizard.WizardPageSimple_Chain(),它設置兩頁間的連接關係。
嚮導頁的複雜版:wx.wizard.WizardPage,稍微不一樣。它沒有顯式地設置前一頁和下一頁,而是使你可以使用更復雜的邏輯去定義下一步到哪兒。它的構造函數以下:
wx.WizardPage(parent, bitmap=wx.NullBitmap, resource=None)
啓動提示
wx.CreateFileTipProvider(filename, currentTip)
顯示提示的函數是wx.ShowTip():
wx.ShowTip(parent, tipProvider, showAtStartup)
建立菜單的步驟:
·建立菜單欄 wx.MenuBar()
·把菜單欄附加給框架
·建立單個的菜單 wx.Menu(title="", style=0) 而後 Append(menu, title)
·把菜單附加給菜單欄或一個父菜單
·建立單個的菜單項
·把這些菜單項附加給適當的菜單
·爲每一個菜單項建立一個事件綁定
在菜單欄處理菜單的wx.MenuBar的方法
Append(menu, title):將menu參數添加到菜單欄的尾部(靠右顯示)。title參數被用來顯示
新的菜單。若是成功返回True,不然返回False。
Insert(pos, menu, title):將給定的menu插入到指定的位置pos(調用這個函數以後,
GetMenu(pos) == menu成立)。就像在列表中插入同樣,全部後面的菜單將被右移。菜單的索
引以0開始,因此pos爲0等同於將菜單放置於菜單欄的左端。使用GetMenuCount()做爲pos等同
於使用Append。title被用於顯示名字。函數若是成功則返回True。
Remove(pos):刪除位於pos的菜單,以後的其它菜單左移。函數返回被刪除的菜單。
Replace(pos, menu, title):使用給定的menu,和title替換位置pos處的菜單。菜單欄上的
其它菜單不受影響。函數返回替換前的菜單。
wx.MenuBar包含一些其它的方法。它們用另外的方式處理菜單欄中的菜單,如表10.2所示。
wx.MenuBar的菜單屬性方法
EnableTop(pos, enable):設置位置pos處的菜單的可用/不可用狀態。若是enable是True,那
麼該菜單是可用的,若是是False,那麼它不可用。
GetMenu(pos):返回給定位置處的菜單對象。
GetMenuCount():返回菜單欄中的菜單的數量。
FindMenu(title):返回菜單欄有給定title的菜單的整數索引。若是沒有這樣的菜單,那麼函
數返回常量wx.NOT_FOUND。該方法將忽略快捷鍵,若是有的話。
GetLabelTop(pos)
SetLabelTop(pos, label):獲得或設置給定位置的菜單的標籤。
給下拉菜單填加項目
wx.MenuBar的菜單項處理方法
FindMenuItem(menuString,itemString):在一個名爲menuString的菜單中查找名爲itemString的菜單項。返回找到的菜單項或wx.NOT_FOUND。
FindItemById(id):返回與給定的wxPython標識符相關聯的菜單項。若是沒有,返回None。
GetHelpString(id)
SetHelpString(id,helpString):用於給定id的菜單項的幫助字符串的獲取或設置。若是沒有這樣的菜單項,那麼get*方法返回"",set*方法不起做用。
GetLabel(id)
SetLabel(id, label):用於給定id的菜單項的標籤的獲取或設置。若是沒有這樣的菜單項,那麼get*方法返回"",set*方法不起做用。這些方法只能用在菜單欄已附加到一個框架後。
wx.Menu的菜單項方法
FindItem(itemString):返回與給定的itemString相關的菜單項或wx.NOT_FOUND。
FindItemById(id):返回與給定的wxPython標識符相關聯的菜單項。若是沒有,返回None。
FindItemByPosition(pos):返回菜單中給定位置的菜單項
GetHelpString(id)
SetHelpString(id,helpString):與菜單欄的對應方法相同。
GetLabel(id)
SetLabel(id, label):與菜單欄的對應方法相同。
菜單項的外觀屬性
GetBackgroundColour()
SetBackgroundColour(colour):屬性類型是wx.Colour,該set*方法的參數也能夠是一個wxPython顏色的名稱字符串。管理項目的背景色。
GetFont()
SetFont(font):項目的顯示字體。類型是wx.Font。
GetTextColour()
SetTextColour(colour):管理顯示在項目中的文本的顏色。類型和背景色的相同。
Sizer
wxPython sizer是一個對象,它惟一的目的就是管理容器中的窗口部件的佈局。sizer自己不是一個容器或一個窗口部件。它只是一個屏幕布局的算法。全部的sizer都是抽象類wx.Sizer的一個子類的實例
wxPython中預約義的sizer
Grid:一個十分基礎的網格佈局。當你要放置的窗口部件都是一樣的尺寸且整齊地放入一個規則的網格中是使用它。
Flex grid:對grid sizer稍微作了些改變,當窗口部件有不一樣的尺寸時,能夠有更好的結果。
Grid bag:grid sizer系列中最靈活的成員。使得網格中的窗口部件能夠更隨意的放置。
Box:在一條水平或垂直線上的窗口部件的佈局。當尺寸改變時,在控制窗口部件的的行爲上很靈活。一般用於嵌套的樣式。可用於幾乎任何類型的佈局。
Static box:一個標準的box sizer。帶有標題和環線。
使用一個sizer的三個基本步驟:
·建立並關聯sizer到一個容器。sizer被關聯到容器使用wx.Window的SetSizer(sizer)方法。因爲這是一個wx.Window的方法,因此這意味着任何wxPython窗口部件均可以有一個sizer,儘管sizer只對容器類的窗口部件有意義。
·添加每一個孩子到這個sizer。全部的孩子窗口部件須要被單獨添加到該sizer。僅僅建立使用容器做爲父親的孩子窗口部件是不夠的。還要將孩子窗口部件添加到一個sizer,這個主要的方法是Add()。Add()方法有一對不一樣的標記
wx.GridSizer(rows, cols, vgap, hgap)
對sizer添加或移除孩子
Add() Add(window, proportion=0, flag=0, border=0, userData=None)
insert() Insert(index, window, proportion=0, flag=0, border=0, userData=None)
Prepend() Prepend(window, proportion=0, flag=0, border=0, userData=None)
Detach() Detach(window)
尺寸調整和對齊行爲標記
wx.ALIGN_BOTTOM:按照窗口部件被分配的空間(格子)的底部對齊。
wx.ALIGN_CENTER:放置窗口部件,使窗口部件的中心處於其所分配的空間的中心。
wx.ALIGN_CENTER_HORIZONTAL:在它所處的格子中,水平居中。
wx.ALIGN_CENTER_VERTICAL :在它所處的格子中,垂直居中。
wx.ALIGN_LEFT:靠着它所處的格子左邊緣。這是默認行爲。
wx.ALIGN_TOP:靠着它所處的格子的上邊緣。這是默認的行爲。
wx.EXPAND:填滿它所處的格子空間。
wx.FIXED_MINSIZE:保持固定項的最小尺寸。
wx.GROW:與wx.EXPAND相同。但比之少兩個字符,節約了時間。
wx.SHAPED:窗口部件的尺寸改變時,只在一個方向上填滿格子,另外一個方向上按窗口部件原先的形狀尺寸的比列填充。
圖像
從一個文件載入一個圖像,使用wx.Image的構造函數:
wx.Image(name, type=wx.BITMAP_TYPE_ANY, index=-1)
wxPython支持的圖像文件格式
處理器類:wx.ANIHandler 類型標記:wx.BITMAP_TYPE_ANI
說明:動畫光標格式。這個處理器只載入圖像而不保存它們。
處理器類:wx.BMPHandler 類型標記:wx.BITMAP_TYPE_BMP
說明:Windows和OS/2位圖格式。
處理器類:wx.CURHandle 類型標記:wx.BITMAP_TYPE_CUR
說明:Windows光標 圖標格式。
處理器類:wx.GIFHandler 類型標記:wx.BITMAP_TYPE_GIF
說明:圖形交換格式。因爲版權限制,這個處理器不保存圖像。
處理器類:wx.ICOHandler 類型標記:wx.BITMAP_TYPE_ICO
說明:Windows圖標格式。
處理器類:wx.IFFHandler 類型標記:wx.BITMAP_TYPE_IFF
說明:交換文件格式。這個處理器只載入圖像,它不保存它們。
處理器類:wx.JPEGHandler 類型標記:wx.BITMAP_TYPE_JPEG
說明:聯合圖形專家組格式。
處理器類:wx.PCXHandler 類型標記:wx.BITMAP_TYPE_PCX
說明:PC畫刷格式。當以這種格式保存時,wxPython計算在這個圖像中的不一樣顏色的數量。若是可能的話,這個圖像被保存爲一個8位圖像(也就是說,若是它有256種或更少的顏色)。不然它保存爲24位。
處理器類:wx.PNGHandler 類型標記:wx.BITMAP_TYPE_PNG
說明:便攜式網絡圖形格式。
處理器類:wx.PNMHandler 類型標記:wx.BITMAP_TYPE_PNM
說明:只能載入ASCII或原始的RGB圖像。圖像被該處理器保存爲原始的RGB。
處理器類:wx.TIFFHandler 類型標記:wx.BITMAP_TYPE_TIF
說明:標籤圖像文件格式。
處理器類:wx.XPMHandler 類型標記:wx.BITMAP_TYPE_XPM
說明:XPixMap格式。
處理器類:自動 類型標記:wx.BITMAP_TYPE_ANY
說明:自動檢測使用的格式,而後調用相應的處理器。
wx.Image的圖像處理方法
ConvertToMono(r, g, b):返回一個與原尺寸一致的wx.Image,其中全部顏色值爲(r, g, b)的像素顏色改成白色,其他爲黑色。原圖像未改變。
Mirror(horizontally=True):返回原圖像的一個鏡像圖像。若是horizontally參數是True,那麼鏡像圖像是水平翻轉了的,不然是垂直翻轉了的。原圖像沒有改變。
Replace(r1, g1, b1, r2, g2, b2):改變調用該方法的圖像的全部顏色值爲r1, g1, b1的像素的顏色爲r2, g2, b2。
Rescale(width, height):改變圖像的尺寸爲新的寬度和高度。原圖像也做了改變,而且顏色按比例地調整到新的尺寸。
Rotate(angle, rotationCentre, interpolating=True, offestAfterRotation=None):返回旋轉原圖像後的一個新的圖像。參數angle是一個浮點數,表明所轉的弧度。rotationCentre是一個wx.Point,表明旋轉的中心。若是interpolating爲True,那麼一個較慢而精確的算法被使用。offsetAfterRotation是一個座標點,代表在旋轉後圖像應該移位多少。任何未被覆蓋的空白像素將被設置爲黑色,或若是該圖像有一個遮罩色,設置爲遮罩色(mask color)。
Rotate90(clockwise=True):按照參數clockwise的布爾值,控制圖像按順或逆時針方向做90度的旋轉。
Scale(width, height):返回一個原圖像的拷貝,並按比例改變爲新的寬度和高度。
如何改變光標
預約義的光標
wx.CURSOR_ARROW:標準的箭頭光標。
wx.CURSOR_ARROWWAIT:一個表示繁忙的光標,它同時顯示標準箭頭和一個沙漏。只在Windows系統有效。
wx.CURSOR_BLANK:不可見的光標。當你想欺騙用戶時是有用的。
wx.CURSOR_BULLSEYE:一個bullseye cursor(在較大的光標裏面有小的園環)。有時對於精確指向是有用的。
wx.CURSOR_CHAR:一個字符光標。不是在所平臺上有效。
wx.CURSOR_CROSS:十字叉絲光標。
wx.CURSOR_HAND:典型的手指型光標。
wx.CURSOR_IBEAM:垂直的I型光標,一般用在一個文本編輯域中。
wx.CURSOR_LEFT_BUTTON:一個帶有左按鍵爲按下狀態的鼠標——用於提示用戶他應該按下左按鍵。不是對全部平臺有效。
wx.CURSOR_MAGNIFIER:放大鏡,一般用於表示縮放。
wx.CURSOR_MIDDLE_BUTTON:一個帶有中間按鍵爲按下狀態的鼠標。
wx.CURSOR_NO_ENTRY:一箇中間有一個斜線的園環光標。用於代表屏幕中的一個區域是無效的(例如對一個目標的拖放)。
wx.CURSOR_PAINT_BRUSH:像一個畫刷樣的光標。一般用在繪圖程序中。
wx.CURSOR_PENCIL:鋼筆樣光標,經常使用於繪圖程序中。
wx.CURSOR_POINT_LEFT:左指向箭頭光標。
wx.CURSOR_POINT_RIGHT:右指向箭頭光標。
wx.CURSOR_QUESTION_ARROW:一個帶有問號的箭頭,經常使用於表示上下文幫助。
wx.CURSOR_RIGHT_ARROW:正如標準的箭頭光標同樣,只是鏡像化的,以便它指向右邊。
wx.CURSOR_RIGHT_BUTTON:一個右按鍵按下的鼠標。
wx.CURSOR_SIZENESW:光標的一種,用於代表兩個方向的尺寸調整,光標的傾斜方向是45度(西南到東北方向)。
wx.CURSOR_SIZENS:垂直調整尺寸光標,上下指向。
wx.CURSOR_SIZENWSE:光標的一種,用於代表兩個方向的尺寸調整,光標的傾斜方向是135度。
wx.CURSOR_SIZEWE:水平調整尺寸光標,左右指向。
wx.CURSOR_SIZING:一般的尺寸調整光標,四個方向的箭頭指向。
wx.CURSOR_SPRAYCAN:另外一個繪圖用的光標。
wx.CURSOR_WAIT:沙漏等待光標。
wx.CURSOR_WATCH:手錶型等待光標
其餘高級控件請看個人wxpython的其餘博客