两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

wxPython中的控件全部繼承與wx.Control,包含了靜態(tài)文本、文本輸入控件、按鈕、列表、滑塊、滾動條、復選框等,本節(jié)我們來學習一下靜態(tài)文本和文本輸入控件。

1. 靜態(tài)文本

靜態(tài)文本就是在上屏幕顯示的靜態(tài)文字,我們使用的是wx.StaticText類來完成,它的語法格式為:

wx.StaticText(parent,id,label=’’,pos=wx.DefaultPositon,size=wx.DefaultSize,style=’’,name=’’)

label為顯示在控件中的文本信息,其余的我們在前面都學習過就不再作解釋。

其中樣式style的取值有:

wx.ALIGN_CENTER:靜態(tài)文本位于靜態(tài)文本控件的中心。

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

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

wx.ST_NO_AUTORESIZE:如果使用了這個樣式,那么在使用了SetLabel()改變文本之后,靜態(tài)文本控件不將自我調(diào)整尺寸。

我們來使用這種方式來輸出一首詩,代碼如下:

import wx
class Frame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, wx.ID_ANY,"靜態(tài)文本", size =(200, 170))
        panel = wx.Panel(self, -1)
        wx.StaticText(panel, wx.ID_ANY, "春夜喜雨 ——杜甫。", (0, 10),(145, -1),wx.ALIGN_RIGHT)
        text = wx.StaticText(panel, wx.ID_ANY, "好雨知時節(jié),當春乃發(fā)生。", (0, 30),(160, -1),wx.ALIGN_RIGHT)
        text = wx.StaticText(panel, wx.ID_ANY, "隨風潛入夜,潤物細無聲。", (0,50), (160, -1),wx.ALIGN_RIGHT)
        text =wx.StaticText(panel, wx.ID_ANY, "野徑云俱黑,江船火獨明。", (0,70),(160, -1),wx.ALIGN_RIGHT)
        text =wx.StaticText(panel, wx.ID_ANY, "曉看紅濕處,花重錦官城。", (0,90),(160, -1),wx.ALIGN_RIGHT)
if __name__ == '__main__':
    app = wx.App()
    frame = Frame()
    frame.Show(True)
    app.MainLoop()

輸出結(jié)果為:

wxpython4

注意我們在使用的時候首先要用wx.Panel方式來創(chuàng)建一個容器,類似于Tkinter中的Frame容器,然后我們在這個容器里放置一些組件。

我們還可以對文字信息進行修飾,使用wx.Font方法,它的語法結(jié)構(gòu)如下:

wx.Font(pointSize,fimily,style,weight,underline=True,faceName=’’,encoding=wx.FONTENCODING_DEFAULT)

pointSize為字體的尺寸,family為字體的名字,style來判定傾斜,weight為寬度,underline為下劃線,True有,F(xiàn)alse為無,faceName為此方法的字體名,encoding為編碼方式。

2. 文本輸入控件

我們在與程序交互的時候,靜態(tài)文字是無法獲取我們輸入的信息,因此我們引入wx.TextCtrl類來獲取用戶輸入的文本內(nèi)容,它的語法結(jié)構(gòu)為:

wx.TextCtrl(parent,id,value=’’,pos=wx.DefaultPositon,size=wx.DefaultSize,style,validator=wx.DefaultVali
dator,name=’’)

除了validator為過濾數(shù)據(jù)外其余的我們在前面都提到過,style在這里功能有所增添,我們介紹再介紹一下。

wx.TE_CENTER:控件中的文本居中。

wx.TE_LEFT:控件中的文本左對齊。

wx.TE_NOHIDESEL:文本始終高亮顯示,只適用于Windows。

wx.TE_PASSWORD:不顯示所鍵入的文本,代替以星號顯示。

wx.TE_PROCESS_ENTER:如果使用了這個樣式,那么當用戶在控件內(nèi)按下回車

鍵時,一個文本輸入事件被觸發(fā)。否則,按鍵事件內(nèi)在的由該文本控件或該對話框管理。

wx.TE_PROCESS_TAB:如果指定了這個樣式,那么通常的字符事件在Tab鍵按下

時創(chuàng)建。否則,Tab由對話框來管理,通常是控件鍵的切換。

wx.TE_READONLY:文本控件為只讀,用戶不能修改其中的文本。

wx.TE_RIGHT:控件中的文本右對齊。

我們使用wx.TextCtrl來實現(xiàn)一個登陸界面。

代碼如下:

import wx
class Frame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, wx.ID_ANY,"登陸", size =(300, 300))
        panel = wx.Panel(self, -1)
        wx.StaticText(panel, wx.ID_ANY, "登錄界面", (0, 10),(150, -1),wx.ALIGN_RIGHT)
        text = wx.StaticText(panel, wx.ID_ANY, "賬戶", (0, 50),(80, -1),wx.ALIGN_RIGHT)
        text = wx.StaticText(panel, wx.ID_ANY, "密碼", (0, 90),(80, -1),wx.ALIGN_RIGHT)
        text = wx.TextCtrl(panel, wx.ID_ANY, "", (100,50),(100, 20),wx.ALIGN_LEFT)
        text = wx.TextCtrl(panel, wx.ID_ANY, "", (100,90),(100, 20),wx.ALIGN_LEFT)
if __name__ == '__main__':
    app = wx.App()
    frame = Frame()
    frame.Show(True)
    app.MainLoop()

運行結(jié)果如圖:

wxpython5


點贊(0)

C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習題和答疑,點擊了解:

一點編程也不會寫的:零基礎(chǔ)C語言學練課程

解決困擾你多年的C語言疑難雜癥特性的C語言進階課程

從零到寫出一個爬蟲的Python編程課程

只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程

信息學奧賽或C++選手的 必學C++課程

藍橋杯ACM、信息學奧賽的必學課程:算法競賽課入門課程

手把手講解近五年真題的藍橋杯輔導課程

Dotcpp在線編譯      (登錄可減少運行等待時間)