“ AttributeError:模块'wx'没有属性'adv'”,尽管Phoenix [关闭]

问题描述 投票:0回答:2

有人知道解决方案吗?

编辑:此问题已关闭,因为问题似乎不太明显。

所以问题是错误“ AttributeError:模块'wx'没有属性'adv'”,尽管看起来一切正常。

实际上,一切正常,问题是另一台PC所独有,其中“ import wx.adv”导致分段错误。

$ python
Python 3.6.7 (default, Oct 22 2018, 11:32:17) 
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
>>> wx.version()
'4.0.7.post2 gtk3 (phoenix) wxWidgets 3.0.5'
>>> wx.adv.NotificationMessage
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: module 'wx' has no attribute 'adv'
>>> 

或者还有其他“非侵入式”通知方法吗?

python wxpython
2个回答
1
投票

尝试导入并再次运行

import wx.adv

0
投票

正如@ arvind8指出的,这是一个单独的导入。

最简单:

import wx
import wx.adv
app = wx.App()
frame = wx.Frame(parent=None, title="Hello, world!")
frame.Show()
m=wx.adv.NotificationMessage("My message","The text I wish to show")
#m.Show(timeout = m.Timeout_Never)
m.Show(timeout = m.Timeout_Auto)
#m.Show(timeout = 5)

app.MainLoop()

注意:消息的超时功能需要几秒钟或2个预设值NeverAuto中的一个。Auto是默认设置。

© www.soinside.com 2019 - 2024. All rights reserved.