1

当我在窗口上执行 hide() 时,它会隐藏但带有任务栏图标。我想跳过隐藏托盘图标,让我通过单击它来恢复它。可能吗?我不想使用最小化。

用户按钮-> 窗口隐藏,但他在任务栏上有图标(可能在系统托盘上),现在他可以通过单击任务栏项目(或者可能是托盘图标)来恢复它。我知道如何使用托盘图标来做到这一点,但不知道如何停止隐藏任务栏项目,我发现的只是“如何隐藏任务栏项目?”。

谢谢

4

2 回答 2

0

我找到了解决方案:也许有一天有人会在使用无框窗口最小化恢复问题时需要这个

void MainWindow::changeEvent( QEvent* e )
{

  if( e->type() == QEvent::WindowStateChange)
  {
    if(this->windowState() & Qt::WindowMinimized )
    {
       //do something after minimize
    }
    else
    {
        setWindowFlags(Qt::Window); //show normal window
        setWindowFlags(Qt::Window | Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint);
     //and again frameless. somethign like refreshing frameless windows after minimize
        this->showNormal();
    }
  }
}
于 2013-09-05T12:22:12.167 回答
0

ShowMinimised()完全符合您的要求

但是,如果由于您覆盖了某些功能而这不起作用,请提供代码示例

于 2013-09-04T16:00:19.627 回答