QStatusBar()不存在,addStretch()我需要将第三个QWidget始终放置在右端。
你好吗?
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import sys
class MyMainWindow(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.setCentralWidget(QLabel("main widget"))
statusBar = QStatusBar()
self.setStatusBar(statusBar)
statusBar.addWidget(QLabel("message left 1"))
statusBar.addWidget(QLabel("message left 2"))
statusBar.addWidget(QLabel("message to right end")) #???
app = QApplication(sys.argv)
window = MyMainWindow()
window.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
谢谢你!
该类QStatusBar有一个addPermanentWidget从右侧开始添加的方法。
所以你可以简单地改变:
statusBar.addWidget(QLabel("message to right end"))
Run Code Online (Sandbox Code Playgroud)
到:
statusBar.addPermanentWidget(QLabel("message to right end"))
Run Code Online (Sandbox Code Playgroud)
请注意,永久小部件的行为与添加到状态栏的普通小部件不同。例如,它们不会被消息遮挡。
另一种不同但丑陋的解决方案是添加一个小部件QStatusBar,并进行较大的拉伸,使其覆盖所有栏,并将该小部件添加到该小部件的布局中。
| 归档时间: |
|
| 查看次数: |
3176 次 |
| 最近记录: |