wxPython的对话框Dialogs

来源:互联网 发布:甬温动车事故 知乎 编辑:程序博客网 时间:2024/06/09 20:11

当然,一个编辑器不能够保存或打开文件,那么它是无用的。这就要用传统的对话框。常见的对话框所提供的基础平台,让您的应用程序将看起来像是一个本地应用程序。这里是实施OnOpen方法在主窗口:

[python] view plaincopy
  1. import wx  
  2. import os  
  3. def OnOpen(self,e):  
  4.     self.dirname = ''  
  5.     dlg = wx.FileDialog(self,"Chooise file",self.dirname,"","*.*".wx.OPEN)  
  6.     if dlg.ShowModal() == wx.ID_OK:  
  7.         self.filename = dlg.GetFilename()  
  8.         self.dirname = dlg.GetDirectory()  
  9.         f = open(os.path.join(self.dirname,self.filename),'r')  
  10.         self.control.SetValue(f.read())  
  11.         f.close()  
  12.     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) 
等等 ...
原创粉丝点击