wxpython基本控件

轉自:http://hi.baidu.com/ylf575/blog/item/cbbc47100de3adfac2ce794b.html

一、靜態文本控件

wx.StaticText(parent, id, label, pos=wx.DefaultPosition,
    size=wx.DefaultSize, style=0, name="staticText")

wx.StaticText構造函數的參數

parent:父窗口部件。

id:標識符。使用-1可以自動創建一個唯一的標識。

label:你想顯示在靜態控件中的文本。

pos:一個wx.Point或一個Python元組,它是窗口部件的位置。

size:一個wx.Size或一個Python元組,它是窗口部件的尺寸。

style:樣式標記。

name:對象的名字,用於查找的需要。

其中樣式
wx.ALIGN_CENTER:靜態文本位於靜態文本控件的中心。

wx.ALIGN_LEFT:文本在窗口部件中左對齊。這是默認的樣式。

wx.ALIGN_RIGHT:文本在窗口部件中右對齊。

wx.ST_NO_AUTORESIZE:如果使用了這個樣式,那麼在使用了SetLabel()改變文本之後,靜態

文本控件不將自我調整尺寸。你應結合使用一個居中或右對齊的控件來保持對齊。


二、文本輸入控件
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(),只是寫入的文本被放置在當前的插入點。

 


三、多行文本控件 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:對於太長的行,以單詞爲界換行。許多操作系統會忽略該樣式。

四、創建字體
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位編碼。大多數情況你可以使用默認編碼。


五、響應文本事件
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()指定了該控件的最大長度,那麼當用戶試圖輸入更長的字符串時,該事件被觸發。你可能會用這個,例如,這時給用戶顯示一個警告消息。


六、使用按鈕
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")

常用控件總結
1、對於靜態文本標籤的顯示,你可以使用wx.StaticText類。還有一個完全用wxPython實現的版本,名爲wx.lib.stattext.GenStaticText。

2、如果你需要一個控件以讓用戶輸入文本,那麼使用類wx.TextCtrl。它允許單行和多行的輸入,還有密碼掩飾和其它的功用。如果本地控支持它,你可以使用wx.TextCtrl來得到樣式文本。樣式是wx.Text-Attr類的實例,wx.Font包含字體信息。對於所有的系統,你可以使用類wx.stc.StyledTextCtrl(它是wxPython對開源Scintilla文本組件的封裝)在一個可編輯的文本組件中實現顏色和字體樣式。

3、創建按鈕,使用wx.Button類,它也有一個通用版wx.lib.buttons.GenButton。按鈕可以使用位圖來代替一個文本標籤(wx.BitmapButton),或在按下和未按下之間有一個開關狀態。還有一個等價於位圖和開關按鈕的通用版,它比標準版有更全面的特性。

4、有一些方法用於選擇或顯示數字值。你可以使用wx.Slider類來顯示一個垂直或水平的滑塊。wx.SpinCtrl顯示一個可以使用上下按鈕來改變數字值的文本控件。wx.Gauge控件顯示一個進度條指示器。

5、你可以從一系列的控件中選出讓用戶從列表選項作出選擇的最佳控件,最佳控件所應考慮的條件是選項的數量,用戶能否多選和你想使用的屏幕空間的總量。複選框使用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)

下面這些是使用文本對話框的便利函數:

1、wx.GetTextFromUser()
2、wx.GetPasswordFromUser()
3、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:手錶型等待光標。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章