Wxpython 剪切复制粘贴与文件打开对话框

0 投票
1 回答
711 浏览
提问于 2025-04-15 23:19

我用Python做了一个网页浏览器,里面有菜单。在一个菜单里,我有剪切、复制和粘贴的选项,但这些功能还没有实现,我需要让它们能用。我需要一个关于复制功能的类的例子(事件菜单)。

打开文件的功能我已经搞定了,它可以接收文件并在屏幕上显示那个文件的链接。但是我该怎么做才能弹出一个对话框,让用户选择至少一种类型的文件呢?

1 个回答

0

如果filepath是你从打开对话框中获取的文件的绝对路径名,可以尝试:

import os
os.startfile(filepath)

这样做会用与文件扩展名关联的相应Windows应用程序打开你的文件(就像双击文件图标一样)。

要在HTML窗口中复制选定的文本,如果你使用了:

import wx.lib.iewin as iewin

那么在你的Frame或Panel子类中,你需要在__init__()方法里创建浏览器对象的实例,使用:

self.ie = iewin.IEHtmlWindow(self, -1, style =wx.NO_FULL_REPAINT_ON_RESIZE)

并将复制按钮的点击事件绑定到一个'on_copy'方法上。
最后,你需要定义一个on_copy(self, event)方法,这个方法会在你点击'复制'按钮时被触发:

def on_copy(self, event):
   self.selection = self.ie.GetStringSelection(asHTML=False)

撰写回答