4

如何将 QStatusBar 中的文本居中对齐?默认情况下,它总是左对齐。

我知道我可以添加 QLabel 并设置对齐方式,但我想使用纯文本和 .showMessage(QString, int) 方法,所以我可以添加超时值。

4

2 回答 2

6

QStatusBar 在这里有三个值得注意的功能:

addPermanentWidget- 放置一个小部件右对齐

addWidget- 放置一个左对齐的小部件,可以被状态消息遮挡

showMessage- 显示状态消息

这些是状态栏的完善标准。虽然您可以破解以获得您正在寻找的东西,但我建议您重新考虑您的需求。也许您的 QLabel 应该与 addPermanentWidget 一起放置?

查看文档以获取更多信息:http ://doc.qt.io/qt-5/qstatusbar.html

于 2010-12-10T03:39:35.140 回答
5

如果您只想将消息本身置于整个状态栏的中心,请执行以下操作:

QLabel* statusLabel = new QLabel("Your Message");
statusBar()->addWidget(statusLabel,1);

这个附加参数 1 将您的标签拉伸到状态栏的完整宽度。

问候

于 2013-09-26T05:35:51.860 回答