c++ - 小部件不会隐藏

标签 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();
    }
}

最佳答案

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

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

关于c++ - 小部件不会隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18103675/

相关文章:

c++ - Qt::QStackedWidget 插入 vs 子部件构造函数调用

c++ - Qt (C++) : QFile creates text file successfully but does not write to it

qt - 使用Gstreamer或Phonon或VLC播放器的Qt中的视频播放器

Magento:将小部件工具添加到产品和类别所见即所得

c++ - Variadic 可变模板模板参数

c++ - Visual Studio 2008 是否使用 make 实用程序?

c++ - Qt 文件夹浏览器多次打开

java - 计时器小部件卡住

css - 如何从 FriendFeed 小部件中删除边框?

c++ - 在 C++ 中,将 std::numeric_limits<double>::max() 用作特殊的 "flag"是否安全?