当然,一个编辑器不能够保存或打开文件,那么它是无用的。这就要用传统的对话框。常见的对话框所提供的基础平台,让您的应用程序将看起来像是一个本地应用程序。这里是实施OnOpen方法在主窗口:
- import wx
- import os
- def OnOpen(self,e):
- self.dirname = ''
- dlg = wx.FileDialog(self,"Chooise file",self.dirname,"","*.*".wx.OPEN)
- if dlg.ShowModal() == wx.ID_OK:
- self.filename = dlg.GetFilename()
- self.dirname = dlg.GetDirectory()
- f = open(os.path.join(self.dirname,self.filename),'r')
- self.control.SetValue(f.read())
- f.close()
- dlg.Destroy()
说明:
首先:我们通过调用适当的构造函数创建对话框。
然后:调用ShowModal(),打开对话框-"Modal"代表用户在没有选择OK或者Cancel之前,程序是不做任何事情。
最后:如果用户按下OK按钮,ShowModal的返回值就是代表OK按钮的ID按下了。
----------------------------------------------------------------------------------------------------------------------------你现在应该能够添加相应的进入菜单,并将其连接到OnOpen方法。
当然,这个程序是远非一个像样的编辑器。但添加其他功能不应被任何困难已经完成什么。你可能需要的灵感来自演示附带wxPython:
Drag and Drop.
MDI
Tab view/multiple files
Find/Replace dialog
Print dialog (Printing)
Macro-commands in python ( using the eval function)
等等 ...