我正在尝试为我的软件创建一个打开屏幕。因为我在QMainwindow
Qt 中有一个状态栏,所以我在打开屏幕的底部有一个透明的线条。
我尝试使用:
this-> statusBar () -> hide ();
ui-> statusBar-> hide ();
但由于某种原因,Qt 忽略了它们,仍然在屏幕底部显示透明线。
我无法完全删除状态行,因为我稍后在下一个屏幕上使用了它。
我怎么能隐藏它?
我正在尝试为我的软件创建一个打开屏幕。因为我在QMainwindow
Qt 中有一个状态栏,所以我在打开屏幕的底部有一个透明的线条。
我尝试使用:
this-> statusBar () -> hide ();
ui-> statusBar-> hide ();
但由于某种原因,Qt 忽略了它们,仍然在屏幕底部显示透明线。
我无法完全删除状态行,因为我稍后在下一个屏幕上使用了它。
我怎么能隐藏它?
QMainWindow::setStatusBar(nullptr);
您也可以使用“this”而不是“ui”
this->statusbar()->hide();
选择:this->statusbar()->setVisible(false);
Ui 是表单本身,“this”是 MainWindow 小部件。Statusbar() 是 MainWindow 的成员,而不是 Ui 窗体。您不能直接访问 ui->MainWindow,在 MainWindow 类中,使用 'this->' 访问其成员。
我尝试从代码中使用 statusbar()->hide(),但这并没有解决我的具体问题,即状态栏的空间仍然存在于对话框中,也存在于 UI 设计器中。
我的解决方案:手动编辑 myview.ui 文件并删除该行:
<widget class="QStatusBar" name="statusbar"/>
这解决了它:没有更多的状态栏。(因为我不想在那里,这对我有用)