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

1. 下拉列表

下拉列表是由一個(gè)文本框和一個(gè)列表組成的,它有兩種方法可以使用,一種是wx.ComboBox,一種是wx.Choice,前者的文本框是可變的,而后者的是固定的。

我們直接通過例子來看一下:

import wx
class MyFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, -1, "下拉列表", size=(300, 300))
        self.Centre()
        panel = wx.Panel(self)#創(chuàng)建一個(gè)容器
        box_one = wx.BoxSizer(wx.HORIZONTAL)
        text_one = wx.StaticText(panel,label='你喜歡的運(yùn)動(dòng)為:')
        sports = ['籃球','足球','排球']
        select_one = wx.ComboBox(panel,-1,value = '足球',choices = sports,style = wx.CB_SORT)
              box_one.Add(text_one,1,flag=wx.LEFT|wx.RIGHT|wx.FIXED_MINSIZE,border = 7)
        box_one.Add(select_one,1,flag = wx.ALL|wx.FIXED_MINSIZE)
        box_two = wx.BoxSizer(wx.HORIZONTAL)
        text_two = wx.StaticText(panel,label='你喜歡的手機(jī)品牌為:')
        phones = ['小米','華為','蘋果']
        select_two = wx.Choice(panel,-1,choices = phones,style = wx.CB_SORT)
        box_two.Add(text_two,1,flag=wx.LEFT|wx.RIGHT|wx.FIXED_MINSIZE,border = 7)
        box_two.Add(select_two,1,flag = wx.ALL|wx.FIXED_MINSIZE)
        bbox = wx.BoxSizer(wx.VERTICAL)
        bbox.Add(box_one,1,flag = wx.ALL|wx.EXPAND,border = 7)
        bbox.Add(box_two, 1, flag=wx.ALL | wx.EXPAND, border=7)
        panel.SetSizer(bbox)
if __name__ == "__main__":
    app = wx.App()
    frame = MyFrame()
    frame.Show()
    app.MainLoop()

運(yùn)行結(jié)果如下圖:

wxpython15             wxpython16

我們可以看出兩種列表的不同之處,選擇使用wx.Choice的時(shí)候,選擇框中的內(nèi)容是固定的,只有從列表中選擇,而使用wx.ComboBox的時(shí)候選擇框中的內(nèi)容不是固定的,關(guān)鍵語句:

select_one = wx.ComboBox(panel, -1, value='足球', choices=sports, style=wx.CB_SORT)
select_two = wx.Choice(panel, -1, choices=phones, style=wx.CB_SORT)

2. 菜單

我們可以發(fā)現(xiàn)在日常生活中使用的大多圖形用戶界面都是有菜單項(xiàng)的,如下面的幾張圖:

        wxpython17

        wxpython18    

        wxpython19

點(diǎn)擊其中一個(gè)菜單項(xiàng)還有多個(gè)選項(xiàng)供我們選擇,下面我們來學(xué)習(xí)使用wxPython中的功能來實(shí)現(xiàn)菜單欄。

1) 創(chuàng)建一個(gè)菜單欄:menuBar = wx.MenuBar()。

2) 創(chuàng)建菜單: fileMenu = wx.Menu()

3) 創(chuàng)建菜單項(xiàng): newItem = wx.MenuItem()

4) 添加菜單項(xiàng)到菜單中: fileMenu.AppendItem(newItem)

5) 添加菜單到菜單欄:menuBar.Append(fileMenu, title = "File")

6) 把菜單欄設(shè)置為界面的菜單欄:self.SetMenuBar(menuBar)

7) 綁定菜單事件:self.Bind(wx.EVT_MENT, self.menuHandler)

代碼如下:

import wx
class MyFrame(wx.Frame):
    def __init__(self):
        super().__init__(parent=None, title="wxPython", size=(400, 300))
        self.Center()
        self.text = wx.TextCtrl(self, -1, style=wx.TE_MULTILINE)
        vbox = wx.BoxSizer(wx.VERTICAL)
        self.SetSizer(vbox)
        vbox.Add(self.text, 1, flag=wx.EXPAND | wx.ALL, border=1)
        menubar = wx.MenuBar()#對(duì)應(yīng)步驟1
        self.SetMenuBar(menubar)
        file_menu = wx.Menu()#對(duì)應(yīng)步驟2
        menubar.Append(file_menu, '菜單')#對(duì)應(yīng)步驟4
        file_menu.Append(id=wx.ID_NEW, item='新建', helpString='new file')
        file_menu.AppendSeparator()
        edit_menu = wx.Menu()
        file_menu.AppendSubMenu(edit_menu, "編輯")
        copy_item = wx.MenuItem(edit_menu, 100, text="復(fù)制", kind=wx.ITEM_NORMAL)#對(duì)應(yīng)步驟3
        edit_menu.Append(copy_item)
        cut_item = wx.MenuItem(edit_menu, 101, text="剪切", kind=wx.ITEM_NORMAL)
        edit_menu.Append(cut_item)
        paste_item = wx.MenuItem(edit_menu, 102, text="粘貼", kind=wx.ITEM_NORMAL)
        edit_menu.Append(paste_item)
if __name__ == "__main__":
    app = wx.App()
    frame = MyFrame()
    frame.Show()
    app.MainLoop()

運(yùn)行結(jié)果如下:

wxpython20


點(diǎn)贊(0)

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

一點(diǎn)編程也不會(huì)寫的:零基礎(chǔ)C語言學(xué)練課程

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

從零到寫出一個(gè)爬蟲的Python編程課程

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

信息學(xué)奧賽或C++選手的 必學(xué)C++課程

藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競(jìng)賽課入門課程

手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程

Dotcpp在線編譯      (登錄可減少運(yùn)行等待時(shí)間)