- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在通过制作一个带有菜单栏和状态栏的窗口来训练 wxpython。我使用的是 mac os,所以也许它的工作方式有所不同,因为我不知道我的代码有什么问题,但我在互联网上没有找到任何内容。
这是我的代码:
#!/usr/bin/python
# coding: utf-8
import wx
class Menus(wx.Frame):
def __init__(self, ptitle):
wx.Frame.__init__(self, None, 1, title = ptitle, size = (500, 300))
menuFile = wx.Menu()
menuFile.Append(wx.ID_OPEN, "&Open\tCTRL+o")
menuFile.Append(wx.ID_CLOSE, "&Close\tCTRL+c")
menuFile.AppendSeparator()
menuFile.Append(wx.ID_EXIT, "&Quit\tCTRL+q")
menuBar = wx.MenuBar()
menuBar.Append(menuFile, "&File")
self.SetMenuBar(menuBar)
self.bar = wx.StatusBar(self, 1)
self.bar.SetFieldsCount(2)
self.bar.SetStatusWidths([1,1])
self.SetStatusBar(self.bar)
self.Bind(wx.EVT_MENU, self.OnExit, id=wx.ID_EXIT)
self.Bind(wx.EVT_MENU, self.OnOpen, id=wx.ID_OPEN)
self.Bind(wx.EVT_MENU, self.OnClose, id=wx.ID_CLOSE)
def OnOpen(self, evt):
self.bar.SetStatusText("Choice -> open", 1)
def OnClose(self, evt):
self.bar.SetStatusText("Choice -> close", 1)
def OnExit(self, evt):
self.Destroy()
class App(wx.App):
def OnInit(self):
window = Menus("Window with menu")
window.Show(True)
self.SetTopWindow(window)
return True
app = App()
app.MainLoop()
当我单击“打开”或“关闭”时,状态栏上没有文字,但有状态栏。如果我选择而不是设置状态文本来在终端中打印某些内容,则效果很好。我也尝试过写 self.bar.SetStatusText("Text") 但它也不起作用。
如果有人知道此状态栏的问题出在哪里,那就太好了。
谢谢
最佳答案
使用 self.bar.SetStatusWidths([1,1])
您可以将宽度分别设置为 1 像素和 1 像素宽。
您应该使用 [-1,-1](等于)、[-1,-2](第 2 部分是第 1 部分的两倍)等
或者使用固定宽度 [150,200] 例如。
There are two types of fields: fixed widths and variable width fields. For the fixed width fields you should specify their (constant) width in pixels. For the variable width fields, specify a negative number which indicates how the field should expand: the space left for all variable width fields is divided between them according to the absolute value of this number. A variable width field with width of -2 gets twice as much of it as a field with width -1 and so on.
For example, to create one fixed width field of width 100 in the right part of the status bar and two more fields which get 66% and 33% of the remaining space correspondingly, you should use an array containing -2, -1 and 100.
我怀疑“关闭当前文档”消息是内部消息,非常类似于添加到菜单中的自动图标。
最后,self.bar.SetStatusText("Text")
应为 self.bar.SetStatusText("Text",1)
,其中 1
是您希望在其中显示文本的状态栏字段的索引。
例如
self.bar = wx.StatusBar(self, 1)
self.bar.SetFieldsCount(3)
self.bar.SetStatusWidths([200,-1,-2])
self.SetStatusBar(self.bar)
self.bar.SetStatusText("Second position",1)
self.bar.SetStatusText("Third position",2)
关于python - StatusBar 上的 wxpython SetStatusText 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50781353/
今天有小伙伴给我留言问到,try{...}catch(){...}是什么意思?它用来干什么? 简单的说 他们是用来捕获异常的 下面我们通过一个例子来详细讲解下
我正在努力提高网站的可访问性,但我不知道如何在页脚中标记社交媒体链接列表。这些链接指向我在 facecook、twitter 等上的帐户。我不想用 role="navigation" 标记这些链接,因
说现在是 6 点,我有一个 Timer 并在 10 点安排了一个 TimerTask。之后,System DateTime 被其他服务(例如 ntp)调整为 9 点钟。我仍然希望我的 TimerTas
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我就废话不多说了,大家还是直接看代码吧~ ? 1
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑。 核心功能 Mav
我是一名优秀的程序员,十分优秀!