【发布时间】:2014-08-18 03:32:10
【问题描述】:
我刚开始使用 wx python,我无法让状态栏显示菜单项中的帮助文本。我读到状态栏消息可以用SetStatusText() 设置,但我希望显示这样的帮助文本.我正在使用 Ubuntu 14.04/wxPython 2.8/Python 2.7.6。请帮忙。提前致谢。
import wx
class Test(wx.Frame):
def __init__(self,parent,id):
wx.Frame.__init__(self,parent,id,"Frame aka Window",size = (300,200))
panel = wx.Panel(self)
self.status=self.CreateStatusBar()
#self.status.SetStatusText("Something")
menubar=wx.MenuBar()
first=wx.Menu()
second=wx.Menu()
first.Append(wx.NewId(),"New Window","This is a new window")
first.Append(wx.NewId(),"Open...","Open A New Window")
menubar.Append(first,"File")
menubar.Append(second,"Edit")
self.SetMenuBar(menubar)
if __name__=='__main__':
app=wx.PySimpleApp()
frame=Test(None,id=-1)
frame.Show()
app.MainLoop()
【问题讨论】:
-
在 wxPython 2.9(以及所有其他版本,我猜)中,
menu.Append(…, …, 'helptext')中的第三个参数会在自动悬停在菜单项上时显示在状态栏中。您是否将菜单添加到wx.MenuBar实例?你设置菜单栏了吗?你在框架上self.CreateStatusBar()了吗?还是您想实现其他目标? -
我做了所有这些。我只想显示帮助文本。
-
是吗?当您将鼠标悬停在
Menu条目上时,状态栏中会发生什么?MenuBar条目似乎没有帮助文本。如果在您的最小工作示例中,悬停时未显示帮助文本,请在您的问题中发布整个代码。 -
但是我已经在代码中指定了帮助信息。那为什么不显示帮助消息???
-
Mhhh... 您的示例适用于 Win7/wxPython 2.9/python 2.7.6 32 位(如前所述,仅适用于菜单条目,而不适用于顶级菜单条目文件和编辑。什么是你的规格?
标签: python python-2.7 wxpython