我所说的任务栏是指通常位于底部的栏,在那里您有开始菜单按钮等。您知道打开程序时它如何在任务栏中有一个条目吗?例如,如果您启动 qt creator,它在那里有一个条目,您可以单击它以最小化 qt creator 并再次打开它。我想知道 QDialog 中是否有我可以设置的属性,以便此 QDialog 不会在任务栏中创建任何条目。
我想这样做是因为我有一个程序,我在其中单击一个按钮,它会创建一个新对话框并调用 .exec()。问题是我现在在任务栏中获得 2 个条目,一个用于主窗口,另一个用于此对话框。
最佳答案
您需要设置父项,因此对话框将使用父项:
QDialog *dlg = new QDialog(this);
dlg->exec();
或者,您可以使用 Qt::Tool 标志:
QDialog *dlg = new QDialog();
dlg->setWindowFlags(Qt::Tool);
dlg->exec();
但是如果你使用 Qt::Tool 标志,对话框不会关闭,而是隐藏。
关于qt - 如何防止 QDialog 在任务栏中输入?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40240489/