このばかげた質問だと思いますが、ウィジェットが表示された後に非表示にならないのはなぜですか?
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();
}
}