QLabel使用Qt Designer嵌入QStatusBar

Moh*_*lam 22 qt label qt-creator qt-designer qstatusbar

有没有使用Qt Designer在QStatusBar中嵌入QLabel的解决方案?

Kit*_*une 26

我不相信.但是,以编程方式添加一个相当简单.

如果您只是想显示消息,可以使用:statusBar()->showMessage(tr("Message Here"));,或者如果您确实需要状态栏上的QLabel,您可以执行以下操作:

QLabel *label = new QLabel("Message");
statusBar()->addWidget(label);
Run Code Online (Sandbox Code Playgroud)

label将成为一个孩子statusBar(),并出现在左下角的第一个空位(addPermanentWidget(label)将其添加到右下角的第一个空位).如果放在QLabel label类标题(或其他var名称)中,您将能够稍后直接访问该变量(QLabel当然,从第一行中删除初始类型).


del*_*lor 5

即使您手动编辑UI文件也不可能.

  • 我认为这是QtDesigner的一个缺陷 (5认同)

小智 5

Qt Designer无法实现.我通过在Qt Designer中创建标签a以及稍后在我MainWindows添加此行的构造函数中解决它:

Ui::"class name of my MainWindows"::"name of statusBar Object"->addWidget("Object Name of Label");
Run Code Online (Sandbox Code Playgroud)

在我的应用程序中,mainwindows的类名称是MainWindowsForm,状态栏被命名statusBar并且标签被命名informationLabel.然后我有:

Ui::MainWindowsForm::statusBar->addWidget(informationLabel);
Run Code Online (Sandbox Code Playgroud)