如何将 QStatusBar 中的文本居中对齐?默认情况下,它总是左对齐。
我知道我可以添加 QLabel 并设置对齐方式,但我想使用纯文本和 .showMessage(QString, int) 方法,所以我可以添加超时值。
如何将 QStatusBar 中的文本居中对齐?默认情况下,它总是左对齐。
我知道我可以添加 QLabel 并设置对齐方式,但我想使用纯文本和 .showMessage(QString, int) 方法,所以我可以添加超时值。
QStatusBar 在这里有三个值得注意的功能:
addPermanentWidget
- 放置一个小部件右对齐
addWidget
- 放置一个左对齐的小部件,可以被状态消息遮挡
showMessage
- 显示状态消息
这些是状态栏的完善标准。虽然您可以破解以获得您正在寻找的东西,但我建议您重新考虑您的需求。也许您的 QLabel 应该与 addPermanentWidget 一起放置?
查看文档以获取更多信息:http ://doc.qt.io/qt-5/qstatusbar.html
如果您只想将消息本身置于整个状态栏的中心,请执行以下操作:
QLabel* statusLabel = new QLabel("Your Message");
statusBar()->addWidget(statusLabel,1);
这个附加参数 1 将您的标签拉伸到状态栏的完整宽度。
问候