首页| 论坛| 消息

标题:程序setup时有的控件为空指针有的控件又正常的问题
作者:一直往南方开
日期:2021-06-15 15:20
内容:

我在ui文件中设置了两个dockwidget控件,然后我需要他们可以在我拖动主窗体的时候跟随移动或者隐藏
我现在使用的方法是通过重写moveEvent来实现,但是在程序运行时又出现一个我无法理解的问题,下面代码中的dataDock和reconstructDock是我创建的两个控件
在程序setup的时候会触发moveEvent,这个时候就出现问题了,dataDock的move可以正常调用,不是空指针,但是reconstructDock显示为空指针无法设置它的hide()状态
请问这是哪里出了问题?
下面是moveEvent中的代码
void CloudViewer::moveEvent(QMoveEvent* ev)
{
QMainWindow::moveEvent(ev);
int posX = this->geometry().x();
int posY = this->geometry().y();
int mainWindowWidth = this->geometry().width();
int mainWindowHeight = this->geometry().height();
ui.dataDock->move(posX + mainWindowWidth - ui.dataDock->geometry().width() - 50, posY + 100);
if (!ui.reconstructDock->isHidden())
ui.reconstructDock->hide();
}

回复 发表
主题 版块