小工具不会隐藏

时间:2013-08-07 12:41:27

标签: c++ qt widget

我想这个愚蠢的问题,但为什么我的小部件隐藏后不显示?

void Dialog::on_tabWidget_selected(const QString &arg1){
    QWidget *w = new QWidget();
    if(ui->tabWidget->currentIndex() == 3){
             w -> move(1093,278);
             w -> setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint);
             w -> setFixedSize(206,206);
             w -> show();
     }else{
        w ->hide();
    }
}

1 个答案:

答案 0 :(得分:3)

第二次,它会创建一个新的QWidget,因此如果你想做的话,隐藏不会影响旧的小部件。 也许你应该多解释一下预期的结果是什么?

编辑: 如果要在此选项卡打开时显示弹出窗口,只需使用窗口小部件的showEvent和hideEvent。 或者你可以删除“widget * w = new widget();”,添加“QWidget * w;”到* .h,并添加“w = new QWidget();”到构造函数,它应该工作。