Python中使用wxPython開(kāi)發(fā)的一個(gè)簡(jiǎn)易筆記本程序?qū)嵗?/h1>
更新時(shí)間:2015年02月08日 11:49:15 投稿:junjie
這篇文章主要介紹了Python中使用wxPython開(kāi)發(fā)的一個(gè)簡(jiǎn)易筆記本程序?qū)嵗?本文實(shí)現(xiàn)打開(kāi)文件、修改并保存文件功能,需要的朋友可以參考下
一、簡(jiǎn)介
wxPython是Python語(yǔ)言的一套優(yōu)秀的GUI圖形庫(kù),允許Python程序員很方便的創(chuàng)建完整的、功能鍵全的GUI用戶(hù)界面。 wxPython是作為優(yōu)秀的跨平臺(tái)GUI庫(kù)wxWidgets的Python封裝和Python模塊的方式提供給用戶(hù)的。
二、安裝
參考官方網(wǎng)站:http://www.wxpython.org/download.php
三、DEMO
本demo是一個(gè)簡(jiǎn)單的記事本軟件,可以打開(kāi)文件,修改并保存。
import wx
app = wx.App()
win = wx.Frame(
None,
title="simple editor",
size=(410, 335))
bkg = wx.Panel(win)
def openFile(evt):
dlg = wx.FileDialog(
win,
"Open",
"",
"",
"All files (*.*)|*.*",
wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
filepath = ''
if dlg.ShowModal() == wx.ID_OK:
filepath = dlg.GetPath()
else:
return
filename.SetValue(filepath)
fopen = open(filepath)
fcontent = fopen.read()
contents.SetValue(fcontent)
fopen.close()
def saveFile(evt):
fcontent = contents.GetValue()
fopen = open(filename.GetValue(), 'w')
fopen.write(fcontent)
fopen.close()
openBtn = wx.Button(bkg, label='open')
openBtn.Bind(wx.EVT_BUTTON, openFile)
saveBtn = wx.Button(bkg, label='save')
saveBtn.Bind(wx.EVT_BUTTON, saveFile)
filename = wx.TextCtrl(bkg, style=wx.TE_READONLY)
contents = wx.TextCtrl(bkg, style=wx.TE_MULTILINE)
hbox = wx.BoxSizer()
hbox.Add(openBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)
hbox.Add(filename, proportion=1, flag=wx.EXPAND | wx.TOP | wx.BOTTOM, border=5)
hbox.Add(saveBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)
bbox = wx.BoxSizer(wx.VERTICAL)
bbox.Add(hbox, proportion=0, flag=wx.EXPAND | wx.ALL)
bbox.Add(
contents,
proportion=1,
flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT,
border=5)
bkg.SetSizer(bbox)
win.Show()
app.MainLoop()
運(yùn)行效果:

相關(guān)文章
-
詳解Python如何查看一個(gè)函數(shù)的參數(shù)
inspect模塊提供了許多用于檢查對(duì)象的工具函數(shù),其中包括用于獲取函數(shù)參數(shù)信息的函數(shù),所以在Python中,大家可以使用inspect模塊來(lái)查看一個(gè)函數(shù)的參數(shù)信息,本文就來(lái)和大家講講具體操作吧 2023-05-05
-
python實(shí)現(xiàn)數(shù)字炸彈游戲
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)數(shù)字炸彈游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下 2020-07-07
-
scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn)
這篇文章主要介紹了scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧 2020-09-09
-
Python 之pandas庫(kù)的安裝及庫(kù)安裝方法小結(jié)
Pandas 是一種開(kāi)源的、易于使用的數(shù)據(jù)結(jié)構(gòu)和Python編程語(yǔ)言的數(shù)據(jù)分析工具,它與 Scikit-learn 兩個(gè)模塊幾乎提供了數(shù)據(jù)科學(xué)家所需的全部工具,今天通過(guò)本文給大家介紹Python 之pandas庫(kù)的安裝及庫(kù)安裝方法小結(jié),感興趣的朋友跟隨小編一起看看吧 2022-11-11
-
Python之list對(duì)應(yīng)元素求和的方法
今天小編就為大家分享一篇Python之list對(duì)應(yīng)元素求和的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧 2018-06-06
-
Python pytest裝飾器總結(jié)(實(shí)例詳解)
這篇文章主要介紹了Python pytest裝飾器總結(jié),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下 2021-04-04
最新評(píng)論
一、簡(jiǎn)介
wxPython是Python語(yǔ)言的一套優(yōu)秀的GUI圖形庫(kù),允許Python程序員很方便的創(chuàng)建完整的、功能鍵全的GUI用戶(hù)界面。 wxPython是作為優(yōu)秀的跨平臺(tái)GUI庫(kù)wxWidgets的Python封裝和Python模塊的方式提供給用戶(hù)的。
二、安裝
參考官方網(wǎng)站:http://www.wxpython.org/download.php
三、DEMO
本demo是一個(gè)簡(jiǎn)單的記事本軟件,可以打開(kāi)文件,修改并保存。
import wx
app = wx.App()
win = wx.Frame(
None,
title="simple editor",
size=(410, 335))
bkg = wx.Panel(win)
def openFile(evt):
dlg = wx.FileDialog(
win,
"Open",
"",
"",
"All files (*.*)|*.*",
wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
filepath = ''
if dlg.ShowModal() == wx.ID_OK:
filepath = dlg.GetPath()
else:
return
filename.SetValue(filepath)
fopen = open(filepath)
fcontent = fopen.read()
contents.SetValue(fcontent)
fopen.close()
def saveFile(evt):
fcontent = contents.GetValue()
fopen = open(filename.GetValue(), 'w')
fopen.write(fcontent)
fopen.close()
openBtn = wx.Button(bkg, label='open')
openBtn.Bind(wx.EVT_BUTTON, openFile)
saveBtn = wx.Button(bkg, label='save')
saveBtn.Bind(wx.EVT_BUTTON, saveFile)
filename = wx.TextCtrl(bkg, style=wx.TE_READONLY)
contents = wx.TextCtrl(bkg, style=wx.TE_MULTILINE)
hbox = wx.BoxSizer()
hbox.Add(openBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)
hbox.Add(filename, proportion=1, flag=wx.EXPAND | wx.TOP | wx.BOTTOM, border=5)
hbox.Add(saveBtn, proportion=0, flag=wx.LEFT | wx.ALL, border=5)
bbox = wx.BoxSizer(wx.VERTICAL)
bbox.Add(hbox, proportion=0, flag=wx.EXPAND | wx.ALL)
bbox.Add(
contents,
proportion=1,
flag=wx.EXPAND | wx.LEFT | wx.BOTTOM | wx.RIGHT,
border=5)
bkg.SetSizer(bbox)
win.Show()
app.MainLoop()
運(yùn)行效果:

相關(guān)文章
詳解Python如何查看一個(gè)函數(shù)的參數(shù)
inspect模塊提供了許多用于檢查對(duì)象的工具函數(shù),其中包括用于獲取函數(shù)參數(shù)信息的函數(shù),所以在Python中,大家可以使用inspect模塊來(lái)查看一個(gè)函數(shù)的參數(shù)信息,本文就來(lái)和大家講講具體操作吧2023-05-05
python實(shí)現(xiàn)數(shù)字炸彈游戲
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)數(shù)字炸彈游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07
scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn)
這篇文章主要介紹了scrapy結(jié)合selenium解析動(dòng)態(tài)頁(yè)面的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
Python 之pandas庫(kù)的安裝及庫(kù)安裝方法小結(jié)
Pandas 是一種開(kāi)源的、易于使用的數(shù)據(jù)結(jié)構(gòu)和Python編程語(yǔ)言的數(shù)據(jù)分析工具,它與 Scikit-learn 兩個(gè)模塊幾乎提供了數(shù)據(jù)科學(xué)家所需的全部工具,今天通過(guò)本文給大家介紹Python 之pandas庫(kù)的安裝及庫(kù)安裝方法小結(jié),感興趣的朋友跟隨小編一起看看吧2022-11-11
Python之list對(duì)應(yīng)元素求和的方法
今天小編就為大家分享一篇Python之list對(duì)應(yīng)元素求和的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06
Python pytest裝飾器總結(jié)(實(shí)例詳解)
這篇文章主要介紹了Python pytest裝飾器總結(jié),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04

