欢迎大家访问我的网站发现更多内容:omegaxyz.com
下面的python代码实现了一个简单的文本编辑器,可以实现编辑加载和保存操作。
真个界面是实用wxpython来构建的。wxpython是一个GUI图形界面的库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。
另外这个文本编辑器还有些不足,包括利用os.exists()来新建文件,但是对已创建的文件效果是可以的。我将在下一代文本编辑器增加各种功能。
这个文本编辑器没有什么实用价值,仅当学习。
下面给出代码:
import wx
import os
app = wx.App()
win = wx.Frame(None, title="TXT Editor", size=(1000, 666))
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()
win = wx.Frame(None, title='TXT Editor')
button = wx.Button(win, label='保存成功')
win.Show()
openBtn = wx.Button(bkg, label='浏览')
openBtn.Bind(wx.EVT_BUTTON, openFile)
saveBtn = wx.Button(bkg, label='保存')
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()
更多内容请访问我的网站:omegaxyz.com