首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在QStatusBar中添加QVBoxLayout

在QStatusBar中添加QVBoxLayout
EN

Stack Overflow用户
提问于 2014-02-10 09:55:24
回答 3查看 2.1K关注 0票数 2

我需要在QVBoxLayout中的表下添加状态栏。问题是我不知道为什么状态栏不显示。在QBoxLayout中,我添加了一个tableView,在表下我需要有状态栏。下面是我代码的一部分:

代码语言:javascript
复制
  self.setGeometry(200,200,600,600)
  if self._model.productName()!='':
    self.setWindowTitle('TITLE')
  QVBoxLayout(self).addWidget(self.tv)

  # add staus bar
  statusBar = QStatusBar()
  statusLabel = QLabel("Here comes the status bar message!!")
  statusBar.addWidget(statusLabel)
  QVBoxLayout(self).addWidget(statusBar)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-02-10 10:06:43

显示状态栏的理想方法是首先从QtGui.QMainWindow类继承,然后使用statusBar方法创建状态栏。

因此,在创建GUI的主类中,您可以这样做:

代码语言:javascript
复制
class Window(QtGui.QMainWindow):
    def __init__(self, parent):
       super(Window, self).__init__()
       self.statusbar = self.statusBar()

然后,您可以以下列方式在状态栏中显示消息:

代码语言:javascript
复制
self.statusbar.showMessage('This message will be shown in the status bar')

不需要使用QLabel来显示状态栏消息。

或者,您可以从QtGui.QWidget类继承并执行以下操作:

代码语言:javascript
复制
self.statusbar = QStatusBar()
self.statusbar.showMessage('Some status bar message')

此外,正如one of the other answers所指出的,布局的创建方式是错误的。

代码语言:javascript
复制
self.layout = QVBoxLayout(self)
self.layout.addWidget(self.tv)

这应该是正确的方法。

票数 3
EN

Stack Overflow用户

发布于 2014-02-10 10:07:05

不需要在QLabel中添加QStatusBar,只需执行以下操作:

代码语言:javascript
复制
self.statusBar = QStatusBar()
self.statusBar.showMessage("Some message")
...
票数 2
EN

Stack Overflow用户

发布于 2014-02-10 10:17:30

那么,您在管理布局方面是错误的,为了实现布局,它需要在您使用它的小部件存在的时间内使用。因此,基本上,您必须使用new创建布局,并将其放置在某个小部件中。

您当前所做的工作是创建布局,并使用作为临时变量的selfQVBoxLayout(self)一起使用,然后再创建另一个再次是临时的布局。

创建布局的正确方法是:

代码语言:javascript
复制
 QVBoxLayout *layout = new QVBoxLayout (self);
 layout->addWidget (...);
 layout->addWidget (...);

编辑:这个答案是为C++编写的,尽管它仍然指向作者代码中的有效错误,所以我不会删除它,因为它可能对某些人仍然有用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21673912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档