【发布时间】:2014-10-17 12:23:56
【问题描述】:
我无法使用上下文菜单管理剪贴板 我正在尝试使用 2.8 版的 wxpython
import wx
import wx.lib.iewin
class main (wx.Frame):
def __init__(self, parent):
wx.Frame.__init__ (self, parent, id, title, pos, size, style)
self.html_field = HTMLWINDOW(self.p_html, -1)
class HTMLWINDOW(wx.html.HtmlWindow):
def __init__(self, parent, id):
self.ie = wx.lib.iewin.IEHtmlWindow(self, -1, style)
self.Bind(wx.EVT_CONTEXT_MENU, self.menu)
def menu(self, event):
self.copied = self.ie.GetStringSelection()
替代方法。但只有我能得到单词,而不是整个选择
def OnCellClicked(self, cell, x, y, evt):
if isinstance(cell, wx.html.HtmlWordCell):
sel = wx.html.HtmlSelection()
word = cell.ConvertToText(sel)
super(MyHtmlWindow, self).OnCellClicked(cell, x, y, evt)
导入 wx.lib.iewin 我得到这个错误
Traceback (most recent call last):
ValueError: _type_ 'v' not supported
File "main.py", line 3959, in <module>
import wx.lib.iewin as iewin
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/lib/iewin.py", line 15, in <module>
import wx.lib.activex
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/lib/activex.py", line 35, in <module>
import ctypes.wintypes as wt
File "/usr/lib/python2.7/ctypes/wintypes.py", line 23, in <module>
class VARIANT_BOOL(_SimpleCData):
ValueError: _type_ 'v' not supported
【问题讨论】:
-
请同时发布您的代码。
-
FWIW,我得到了同样的错误。 OSX wxpython 3.0.0.0 python 2.7.x。在 windows 下我得到一个不同的错误 wxpython 2.9.5.0.
-
他为什么需要发布他的代码?相关行在回溯中:“ File "main.py", line 3959, in
import wx.lib.iewin as iewin" -
import wx.lib.iewin 因为 iewin 在 Windows 8 上使用 Py2.7 和 wxPython 2.9.5 和 3.0.1 为我工作。我认为他正试图在 Linux 上使用它,我怀疑它是否能正常工作,因为 iewin 仅是 WXMSW。
-
是的 Linux。我没有意识到这一点,反正我会转向新版本的 wxPython