日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

菜单工具栏wxPython菜单与工具栏基础示例

發(fā)布時(shí)間:2024/8/23 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 菜单工具栏wxPython菜单与工具栏基础示例 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這兩天一直在學(xué)習(xí)菜單工具欄之類的問題,上午正好有機(jī)會(huì)和大家討論一下.

????

????

1.基本的api介紹

Package wx :: Class Menu Type Menu Method Summary Menu __init__(self, title, style) __repr__(self) MenuItem Append(self, id, text, help, kind) MenuItem AppendCheckItem(self, id, text, help) MenuItem AppendItem(self, item) MenuItem AppendMenu(self, id, text, submenu, help) Package wx :: Class MenuBar Type MenuBar Window __init__(self, parent, id, pos, size, style, name) Construct and show a generic Window. __repr__(self) bool Append(self, menu, title) Attach(self, frame) Check(self, id, check) Detach(self) bool Enable(self, enable) Enable or disable the window for user input. EnableTop(self, pos, enable) Package wx :: Class EvtHandler Type EvtHandler EvtHandler __init__(self) __repr__(self) AddPendingEvent(self, event) Bind(self, event, handler, source, id, id2)

????

2.簡(jiǎn)單菜單

????在我們的第一個(gè)例子中,我們將創(chuàng)立一個(gè)menubar,一個(gè)文件菜單。菜單將只有一個(gè)菜單項(xiàng)。通過選擇項(xiàng)應(yīng)用程序退出。

????示例代碼如下:

import wx class Example(wx.Frame):def __init__(self,*args,**kw):wx.Frame.__init__(self,None)def InitUI(self):menuBar = wx.MenuBar()filemenu = wx.Menu()fitem = filemenu.Append(001,"exit","Quit Applications")fitem1 = filemenu.Append(002,"002","Quit Applications")menuBar.Append(filemenu,"&File")self.SetMenuBar(menuBar)self.Bind(wx.EVT_MENU, self.OnQuit, fitem)self.SetSize((400,250))self.SetTitle("SimpleMenu")self.Center()self.Show()def OnQuit(self,e):self.Close()def main():app = wx.App()exa = Example(None)exa.InitUI()app.MainLoop() if __name__ == '__main__':main()

????這是一個(gè)以最小的菜單功能小例子。
menubar = wx.MenuBar()首先我們創(chuàng)立一個(gè)menubar對(duì)象。
fileMenu = wx.Menu()接下來,我們創(chuàng)立一個(gè)菜單對(duì)象。
fitem = fileMenu.Append(wx.ID_EXIT, 'Quit', 'Quit application')
我們追加到菜單項(xiàng)的菜單對(duì)象。第一個(gè)參數(shù)是菜單項(xiàng)的ID。標(biāo)準(zhǔn)ID會(huì)自動(dòng)添加一個(gè)圖標(biāo)和快捷(在windows上沒有出現(xiàn)圖標(biāo),也不能用快捷鍵)。 CTRL + Q在我們的例子。第二個(gè)參數(shù)是菜單項(xiàng)的名稱。最后一個(gè)參數(shù)定義狀態(tài)欄上顯示的菜單項(xiàng)被選中時(shí),簡(jiǎn)短的幫助字符串。在這里,我們沒有創(chuàng)造出wx.MenuItem明確。它是幕后的append()方法創(chuàng)立。該方法返回創(chuàng)立的菜單項(xiàng)。此參考將使用后綁定事件。
self.Bind(wx.EVT_MENU, self.OnQuit, fitem)
我們綁定菜單項(xiàng)wx.EVT_MENU的的的定制OnQuit()方法。這類方法將關(guān)閉應(yīng)用程序。
menubar.Append(fileMenu, '&File')
self.SetMenuBar(menubar)
之后,我們追加到菜單欄菜單。 &字符創(chuàng)立一個(gè)快捷鍵。后面的字符下劃線。這類方法是通過按Alt + F快捷拜訪菜單(windows上似乎不能用)。最后,我們吶喊的SetMenuBar()方法。這類方法屬于wx.Frame的部件。它設(shè)置的菜單欄。

????運(yùn)行示例圖

????

????

????

3.快捷鍵與圖標(biāo)

????在這個(gè)例子中,會(huì)手動(dòng)的創(chuàng)立一個(gè)快捷鍵與圖標(biāo),如下圖所示:

????

????示例代碼如下:

import wxAPP_EXIT = 1class Example(wx.Frame):def __init__(self,*args,**kw):wx.Frame.__init__(self,None)def InitUI(self):menuBar = wx.MenuBar()filemenu = wx.Menu()qmi = wx.MenuItem(filemenu,APP_EXIT,"&Quit\tCtrl+Q")bitm = wx.Bitmap("my.png")bitm.SetSize(size=(20,20))qmi.SetBitmap(bitm)filemenu.AppendItem(qmi)self.Bind(wx.EVT_MENU, self.OnQuit, id=APP_EXIT)menuBar.Append(filemenu, '&File')self.SetMenuBar(menuBar)self.SetSize((250, 200))self.SetTitle('Icons and shortcuts')self.Centre()self.Show(True)def OnQuit(self, e):self.Close()def main():app = wx.App()exa = Example(None)exa.InitUI()app.MainLoop() if __name__ == '__main__':main()

????

4.子菜單和離開符

????每個(gè)菜單,也可以有一個(gè)子菜單。這樣我們就可以把成組類似的命令。例如,我們可以將像個(gè)人欄,地址欄,狀態(tài)欄或?qū)Ш綑?#xff0c;將工具欄子菜單隱藏/顯示各種工具欄的命令。在菜單中,我們可以逗號(hào)離開一個(gè)離開的命令。這是一個(gè)簡(jiǎn)單的線條。常見的做法是單獨(dú)的命令,如新建,打開,保存,如打印,打印預(yù)覽命令與一個(gè)單一的分離。在我們的例子中,我們將看到,我們?nèi)绾慰梢詣?chuàng)立子菜單和菜單離開

????示例圖如下:

????

????示例代碼:

import wx class Example(wx.Frame):def __init__(self,*args,**kw):wx.Frame.__init__(self,None)def InitUI(self):menuBar = wx.MenuBar()fileMenu = wx.Menu()fileMenu.Append(wx.ID_NEW,"&New")fileMenu.Append(wx.ID_OPEN, '&Open')fileMenu.Append(wx.ID_SAVE, '&Save')fileMenu.AppendSeparator()imp = wx.Menu()imp.Append(wx.ID_ANY, 'Import newsfeed list...')imp.Append(wx.ID_ANY, 'Import bookmarks...')imp.Append(wx.ID_ANY, 'Import mail...')qmi = wx.MenuItem(fileMenu, wx.ID_EXIT, '&Quit\tCtrl+W')fileMenu.AppendMenu(wx.ID_ANY, 'I&mport', imp) fileMenu.AppendItem(qmi)menuBar.Append(fileMenu, '&File')self.SetMenuBar(menuBar)self.Bind(wx.EVT_MENU, self.OnQuit, qmi)self.SetSize((400,250))self.SetTitle("SimpleMenu")#self.Centre()self.Center()self.Show()def OnQuit(self,e):self.Close()def main():app = wx.App()ex = Example(None)ex.InitUI()app.MainLoop() if __name__ == '__main__':main() 每日一道理
那蝴蝶花依然花開花落,而我心中的蝴蝶早已化作雄鷹飛向了廣闊的藍(lán)天。

????

5.復(fù)選菜單Check menu item

????There are tree kinds of menu items. 它們有三種
normal item
check item
radio item

????在接下來的例子中,我們將演示如何檢查菜單項(xiàng)。一個(gè)檢查菜單項(xiàng)是視覺上表現(xiàn)為一個(gè)滴答在菜單。

????效果圖示:

????

????示例代碼:

import wxclass Example(wx.Frame):def __init__(self,*args,**kw):wx.Frame.__init__(self,None);def InitUI(self):menuBar = wx.MenuBar()filemenu = wx.Menu()viewmenu = wx.Menu()self.shst = viewmenu.Append(wx.ID_ANY,"ShowStatubar","ShowStatubar",kind=wx.ITEM_CHECK)self.shtl = viewmenu.Append(wx.ID_ANY,"ShowToolBar","ShowToolBar",kind=wx.ITEM_CHECK)viewmenu.Check(self.shst.GetId(),True)viewmenu.Check(self.shtl.GetId(),True)self.Bind(wx.EVT_MENU, self.ToggleStatuBar, self.shst)self.Bind(wx.EVT_MENU, self.ToggleToolBar, self.shtl)menuBar.Append(filemenu, '&File')menuBar.Append(viewmenu, '&View')self.SetMenuBar(menuBar)self.toolbar = self.CreateToolBar()bitm = wx.Bitmap("my.png")bitm.SetSize(size=(20,20))self.toolbar.AddLabelTool(1,'',bitm)self.toolbar.Realize()self.statusbar = self.CreateStatusBar()self.statusbar.SetStatusText('Ready')self.SetSize((350, 250))self.SetTitle('Check menu item')self.Centre()self.Show(True)def ToggleStatuBar(self,e):if self.shst.IsChecked():self.statusbar.Show()else:self.statusbar.Hide()def ToggleToolBar(self, e):if self.shtl.IsChecked():self.toolbar.Show()else:self.toolbar.Hide() def main():app = wx.App()exa = Example(None)exa.InitUI()app.MainLoop() if __name__ == '__main__':main()

????

6.右鍵菜單Context menu

????上下文菜單在某些情況下出現(xiàn)的命令的列表。例如,在Firefox網(wǎng)頁瀏覽器,當(dāng)我們?cè)诰W(wǎng)頁上右擊,我們失掉一個(gè)上下文菜單。在這里,我們可以從新載入頁面,回去或查看頁面的源代碼。如果我們右鍵單擊工具欄上,我們失掉另一個(gè)管理工具欄的上下文菜單。偶然也被稱為上下文菜單彈出菜單。

????運(yùn)行效果圖:

????

????示例代碼:

import wx class MyPopupMenu(wx.Menu):def __init__(self,parent):super(MyPopupMenu,self).__init__()self.parent = parentmmi = wx.MenuItem(self,wx.NewId(),'MiniSize')self.AppendItem(mmi)self.Bind(wx.EVT_MENU, self.OnMinimize, mmi)cmi = wx.MenuItem(self,wx.NewId(),'Close')self.AppendItem(cmi)self.Bind(wx.EVT_MENU, self.OnClose, cmi)def OnMinimize(self,e):self.parent.Iconize()def OnClose(self,e):self.parent.Close()class Example(wx.Frame):def __init__(self,*args,**kw):wx.Frame.__init__(self,None);def InitUI(self):self.Bind(wx.EVT_RIGHT_DOWN, self.OnRightDown)self.SetSize((250, 200))self.SetTitle('Context menu')self.Centre()self.Show(True)def OnRightDown(self,e):self.PopupMenu(MyPopupMenu(self),e.GetPosition())def main():app = wx.App()exa = Example(None)exa.InitUI()app.MainLoop() if __name__ == '__main__':main()

????

????參考:

wxPython中文教程 簡(jiǎn)單入門加實(shí)例

????wxPython菜單與工具欄

????如何從新設(shè)置Bitmap的巨細(xì)?http://social.msdn.microsoft.com/Forums/pt-BR/ce4e0b9e-549f-4fb7-a107-a1c3a37839dc/bitmap

????

????

文章結(jié)束給大家分享下程序員的一些笑話語錄: 一條狗在街上閑逛,看見櫥窗里一張告示:「招聘程序員。會(huì)編程,有團(tuán)隊(duì)精神,至少精通兩種語言。均等機(jī)會(huì)。」
  那條狗就進(jìn)去申請(qǐng),但是被拒絕了。
  「我不能雇一條狗在公司里做事。」經(jīng)理說。
  狗不服氣,指著告示上「均等機(jī)會(huì)」幾字抗議。
  經(jīng)理沒法,嘆了口氣,不屑地問道:「你會(huì)編程嗎?」
  那條狗默默地走到電腦前,編了個(gè)程序,運(yùn)作準(zhǔn)確。
  「你有團(tuán)隊(duì)精神嗎?」經(jīng)理問。
  那條狗掉頭看了看門外,一大群野狗在外面虎視耽耽。
  「我真的不能雇狗做這份工作。」經(jīng)理氣急敗壞地說。
  「就算會(huì)編程、有團(tuán)隊(duì)精神,但是我需要的雇員至少要能精通兩種語言。」
  那條狗抬頭看著經(jīng)理說:「喵-噢。」

--------------------------------- 原創(chuàng)文章 By
菜單和工具欄
---------------------------------

轉(zhuǎn)載于:https://www.cnblogs.com/jiangu66/p/3153273.html

總結(jié)

以上是生活随笔為你收集整理的菜单工具栏wxPython菜单与工具栏基础示例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品福利网站 | 久久免费偷拍视频 | 亚洲乱码国产乱码精品精剪 | 欧美一区三区二区在线观看 | 爱爱网视频 | 爆乳熟妇一区二区三区霸乳 | 一本到久久 | 欧美另类z0z变态 | 一个人在线观看www软件 | 99re只有精品| 色网站免费观看 | 日本在线天堂 | 浓精h攵女乱爱av | 男男啪啪网站 | 4438亚洲最大| 超碰影院在线 | 中文字幕亚洲欧美日韩 | 樱桃国产成人精品视频 | 亚州国产精品视频 | 色播av| 岛国精品一区二区 | 国产主播一区二区 | 欧美亚洲综合久久 | 男人的亚洲天堂 | 婷婷综合网站 | 欧美影院在线 | 日韩精品极品 | 日韩草比 | 日韩在线观看视频网站 | 国产黄色特级片 | 日韩白浆| 麻豆视频在线观看 | 亚洲图片在线播放 | 一区二区中文 | 99国产精品人妻噜啊噜 | 最近2018年手机中文字幕版 | 日日网站 | 激情亚洲网 | 国产午夜福利精品 | 免费av入口 | 天天射综合网站 | 亚洲二区av| 嫩草视频网站 | 国产大片在线观看 | 午夜在线精品 | 中日韩在线视频 | 毛茸茸亚洲孕妇孕交片 | 潘金莲裸体一级淫片视频 | 四虎影库永久在线 | 亚洲逼逼 | 97香蕉久久夜色精品国产 | 免费观看理伦片在线播放视频软件 | 中文字幕日本在线观看 | 你懂的在线免费观看 | 日韩精品久久久久久免费 | 在线观看亚洲免费视频 | 三级视频在线 | 日韩欧美一区二区区 | 国产精品久久久久毛片大屁完整版 | 丰满人妻一区二区三区四区53 | 久久久性视频 | 国产视频黄色 | 欧洲成人在线视频 | 亚洲国产视频一区二区三区 | 国产一区视频免费观看 | 久久久久免费观看 | 成人欧美一区二区三区黑人 | 亚洲综合久久久 | 亚洲av色香蕉一区二区三区 | 中文字幕在线播放 | 男人日女人逼 | 男女啪啪国产 | 东京热一区二区三区四区 | 玖玖爱这里只有精品 | 蜜桃视频色 | 四虎库| 五月天婷婷网站 | 福利片在线播放 | 麻豆av免费看| 精品欧美在线观看 | 一个人在线观看免费视频www | 成人性生生活性生交全黄 | 亚洲激情区 | 林雅儿欧洲留学恋爱日记在线 | 高h喷汁呻吟3p | www.四虎在线观看 | 日韩久久久久久久久久久 | 夜夜躁很很躁日日躁麻豆 | 精品国产乱子伦 | 亚洲色图 校园春色 | av片在线观看免费 | 99久久久久久久久 | 亚洲最大成人综合网 | 99久久99久久精品国产片桃花 | 日韩怡春院 | 羞羞羞网站 | 99久国产 | 久久久久人妻一区 | 免费看一级黄色片 |