日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python如何用wx模塊創建文本編輯器

瀏覽:26日期:2022-07-22 13:29:06

用Python的wx模塊創建文本編輯器的方法:

1、設置按鈕的位置

import wxapp = wx.App()win = wx.Frame(None,title = '編輯器', size=(410,335))win.Show()loadButton = wx.Button(win, label = ’打開’,pos = (225,5),size = (80,25))saveButton = wx.Button(win, label = ’保存’,pos = (315,5),size = (80,25))filename = wx.TextCtrl(win, pos = (5,5),size = (210,25))contents = wx.TextCtrl(win, pos = (5,35),size = (390,260), style = wx.TE_MULTILINE | wx.HSCROLL)app.MainLoop()

2、對窗口內容進行布局

import wxapp = wx.App()win = wx.Frame(None,title = '編輯器', size=(410,335))bkg = wx.Panel(win)loadButton = wx.Button(bkg, label = ’打開’)saveButton = wx.Button(bkg, label = ’保存’)filename = wx.TextCtrl(bkg)contents = wx.TextCtrl(bkg, style = wx.TE_MULTILINE | wx.HSCROLL)hbox = wx.BoxSizer()hbox.Add(filename, proportion =1, flag = wx.EXPAND)hbox.Add(loadButton, proportion =0,flag = wx.LEFT, border = 5)hbox.Add(saveButton, proportion =0,flag = wx.LEFT, border = 5)vbox = wx.BoxSizer(wx.VERTICAL)vbox.Add(hbox,proportion = 0,flag = wx.EXPAND | wx.ALL, border = 5)vbox.Add(contents, proportion = 1,flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT, border = 5)bkg.SetSizer(vbox)win.Show()app.MainLoop()

3、添加事件處理函數

在GUI術語中,用戶執行的動作(比如 點擊按鈕)叫做事件。我們需要讓程序注意這些事件并且作出反應。

假設寫了一個負責打開文件的函數,并將其命令為load ,然后就可以像下面這樣將函數作為loadButton的事件處理函數:

loadButton.Bind(wx.EVT_BUTTON, load)

讓我們來完成剩下的工作,現在需要的就是兩個事件處理函數:load(打開)和save(保存)。當事件被調用時,它會收到一個事件對象作為它唯一的參數,其中包括發生了什么事情的信息,但是在這里可以忽略這方法的事情,因為程序只關心點擊時發生的事情。

def load(event): file = open(filename.GetValue()) contents.SetValue(file.read()) file.close()

文件名使用filename對象GetValue方法獲取。為了將文本引入文本區,只要使用contents.SetValue即可。

save函數和load類似,除了它需要寫入(‘w’),以及用于文件處理部分的write方法,GetValue用于從文本區獲得信息。

def save(event): file = open(filename.GetValue(),’w’) file.write(contents.GetValue()) file.close()

完整代碼如下:

import wxdef load(event): file = open(filename.GetValue()) contents.SetValue(file.read()) file.close()def save(event): file = open(filename.GetValue(),’w’) file.write(contents.GetValue()) file.close()app = wx.App()win = wx.Frame(None,title = '編輯器', size=(410,335))bkg = wx.Panel(win)loadButton = wx.Button(bkg, label = ’打開’)loadButton.Bind(wx.EVT_BUTTON,load)saveButton = wx.Button(bkg, label = ’保存’)saveButton.Bind(wx.EVT_BUTTON,save)filename = wx.TextCtrl(bkg)contents = wx.TextCtrl(bkg, style = wx.TE_MULTILINE | wx.HSCROLL)hbox = wx.BoxSizer()hbox.Add(filename, proportion =1, flag = wx.EXPAND)hbox.Add(loadButton, proportion =0,flag = wx.LEFT, border = 5)hbox.Add(saveButton, proportion =0,flag = wx.LEFT, border = 5)vbox = wx.BoxSizer(wx.VERTICAL)vbox.Add(hbox,proportion = 0,flag = wx.EXPAND | wx.ALL, border = 5)vbox.Add(contents, proportion = 1,flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT, border = 5)bkg.SetSizer(vbox)win.Show()app.MainLoop()

執行結果如下:

Python如何用wx模塊創建文本編輯器

內容擴展:

我們來創建一個文本編輯器,功能要求如下:

* 它可以打開給定文件名的文本文件;

* 它可以編輯文件文件

* 它可以保存文本文件

* 它可以正常退出程序

設置按鈕位置

import wxapp = wx.App()win = wx.Frame(None,title = '編輯器', size=(410,335))win.Show()loadButton = wx.Button(win, label = ’打開’,pos = (225,5),size = (80,25))saveButton = wx.Button(win, label = ’保存’,pos = (315,5),size = (80,25))filename = wx.TextCtrl(win, pos = (5,5),size = (210,25))contents = wx.TextCtrl(win, pos = (5,35),size = (390,260), style = wx.TE_MULTILINE | wx.HSCROLL)app.MainLoop()

這里可能需要注意的是,控件(按鈕,輸入框)的位置和尺寸,位置和尺寸都包括一對數值:位置包括x 和y坐標,而尺寸包括寬和高。

代碼比較簡單,按鈕控件(打開、保存)就不解釋了。需要注意的是文本控件,默認的文本框(text field)就是一行可編譯的文本,沒有滾動條,為了創建文本區(text area)只要使用style參數調整風格,style 參數的值實際上是個整數,但不用直接指定,可以使用按位或運算符OR聯合了wx.TE_MULTILINE來獲取多行文件區,以及 wx.HSCROLL來獲取水平滾動條。

到此這篇關于Python如何用wx模塊創建文本編輯器的文章就介紹到這了,更多相關Python的wx模塊創建文本編輯器方法內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
美女91精品| 综合日韩av| 欧美影院视频| 一本综合精品| 国产一区成人| 国产日产高清欧美一区二区三区| 一区二区91| 日韩午夜av| 日本欧洲一区二区| 老司机免费视频一区二区三区| 国产中文在线播放| 欧美日韩精品免费观看视欧美高清免费大片 | 日韩欧美二区| 久久av影院| 久久亚洲国产| 9色精品在线| 一级欧美视频| 国产精品一区二区99| 欧美激情99| 久久免费大视频| 亚洲精品大全| 视频小说一区二区| 视频一区日韩| 麻豆网站免费在线观看| 日韩av成人高清| 亚洲风情在线资源| 福利精品一区| 一区二区亚洲视频| 黄色aa久久| 久久不见久久见国语| 久久大逼视频| 亚洲手机在线| 免费看久久久| 日韩精品乱码av一区二区| 美女精品久久| 久久亚洲不卡| 久久精品国内一区二区三区水蜜桃| 国产精品午夜av| 青青青免费在线视频| 国产精品久久久久久久久免费高清| 亚洲无线一线二线三线区别av| 国产精品毛片久久久| 亚洲黑丝一区二区| 国产欧美日韩精品一区二区免费 | 欧美1区2区3区| 国产欧美日韩精品一区二区免费 | 日韩三级精品| 婷婷综合六月| 中文字幕在线官网| 日韩欧美精品综合| 久久91视频| 久久精品国产免费| 亚洲欧美日本日韩| 色老板在线视频一区二区| 美女国产精品久久久| 乱一区二区av| 综合激情一区| 老牛国产精品一区的观看方式| 国产不卡av一区二区| 久久99青青| 久久精品国产久精国产| www.51av欧美视频| 神马日本精品| 亚洲一级淫片| 一区二区三区国产盗摄| 日韩国产精品久久久| 亚洲欧洲日韩| 免费亚洲一区| 精品美女在线视频| 欧美日韩国产高清电影| 日韩大片在线| 91久久黄色| 欧美亚洲一区二区三区| 久久精品国产亚洲一区二区三区| 91亚洲自偷观看高清| 欧美日韩国产v| 亚洲黄色在线| 日韩av不卡在线观看| 久久影院资源站| 日韩欧美精品一区| 人人精品亚洲| 99国产精品私拍| 日韩 欧美一区二区三区| 国产乱码精品一区二区三区亚洲人| 国户精品久久久久久久久久久不卡 | 亚洲女同一区| 免费人成网站在线观看欧美高清| 欧美日韩一区二区三区不卡视频| 国产在线一区不卡| 欧美亚洲色图校园春色| 精品国产一区二| 亚州av日韩av| 亚洲欧美日韩一区在线观看| 999久久久免费精品国产| 一区二区自拍| 日韩精品亚洲专区在线观看| 风间由美中文字幕在线看视频国产欧美| 免费成人在线影院| 久久99视频| 亚洲毛片一区| 99久久夜色精品国产亚洲1000部 | 三级亚洲高清视频| 久久99精品久久久野外观看| 中文字幕在线看片| 日韩成人精品一区二区三区| 麻豆成全视频免费观看在线看| 少妇精品久久久一区二区三区| 国产成人免费| 欧美黄色一区二区| 亚洲成人一区| 国产一区二区三区亚洲综合| 深夜日韩欧美| 成人台湾亚洲精品一区二区| 日韩专区欧美专区| 秋霞影院一区二区三区 | 国产欧美日韩视频在线| 欧美日韩亚洲在线观看| 久久精品资源| 久久国产主播| 综合亚洲视频| 亚洲播播91| 久久黄色影视| 青青草国产精品亚洲专区无| 91免费精品| 久久精品九色| 日韩成人精品一区| 国模大尺度视频一区二区| 日韩在线观看中文字幕| 久久午夜精品| 亚洲精选91| 日韩激情一区| 国产成人精品三级高清久久91| 国产精品亚洲成在人线| 欧美国产精品| 欧美黑人巨大videos精品| 麻豆视频一区| 另类欧美日韩国产在线| 成人在线免费观看91| 精品伊人久久| 亚洲啊v在线| 麻豆精品蜜桃| 国产亚洲久久| 亚洲综合二区| 91欧美极品| 欧美日韩18| 久久久精品国产**网站| 欧美激情一区| 欧洲一区二区三区精品| 亚洲激精日韩激精欧美精品| 欧美激情福利| 荡女精品导航| 影音国产精品| 青草综合视频| 一区二区高清| 亚洲欧洲美洲国产香蕉| 久久不见久久见免费视频7| 久久亚州av| 久久男人天堂| 日韩av黄色在线| 麻豆视频久久| 在线日韩av| 久久久精品五月天| 亚洲精品伊人| 色综合狠狠操| 亚洲成人二区| 婷婷成人av| 午夜国产精品视频| 亚洲免费毛片| 99成人在线视频| 水蜜桃精品av一区二区| 日本中文字幕不卡| 激情国产在线| 欧美中文一区| 亚洲国产不卡| 风间由美中文字幕在线看视频国产欧美| 久久都是精品| 都市激情国产精品| 久久精品99国产精品| 午夜在线视频观看日韩17c| 日韩精品电影一区亚洲| 亚洲免费中文| 欧美日韩国产在线观看网站 | 国产99久久久国产精品成人免费| 加勒比视频一区| 亚洲精品乱码久久久久久蜜桃麻豆| 午夜在线一区二区| 日韩欧美2区| 在线观看亚洲精品福利片| 91精品精品| 日韩a一区二区| 午夜视频一区二区在线观看| 久久亚洲成人| 黑丝一区二区| 日韩av二区| 青青草伊人久久| 美女久久久精品| 精品国产三区在线| 日本国产精品| 亚洲精品成人图区| 精品99久久|