我正在嘗試show()
從我的main.cpp
隱藏的MainWindow(實際上所有窗口都隱藏在這一點上)。我試着做這樣的事情:Qt:如何列出隱藏窗口?
QList<QWindow*> windows = QApplication::allWindows();
for (int i = 0; i < windows.size(); ++i) {
if (windows.at(i)->objectName() == "MainWindow")
windows.at(i)->show();
}
但它不起作用。
在Qt文檔中QApplication::allWidgets()
有一個註釋:
注:一些小部件可能會被隱藏。
彷彿這個功能並沒有列出隱藏的小工具,我想這是相同的情況下與allWindows()
,因爲我測試了這段代碼窗口不隱藏時,它的工作。
基本上在void MainWindow::closeEvent
功能我做的:
event->ignore();
hide();
然後,我希望能夠重新打開主窗口當我點擊應用程序的圖標。
有沒有人有更好的主意如何顯示從main.cpp
隱藏的窗口或可以表明如果我做錯了什麼?
編輯:這可能有效,我的問題說謊完全不同。
您是否嘗試過示例代碼:http://doc.qt.io/qt-5/qapplication.html#topLevelWidgets?根據文檔,它應該有效。 – vahancho
有趣的是它也不起作用。 – madasionka
但是這表明我提到的那些函數只會列出隱藏文件,只是出於某種原因,它們不能像我期望的那樣工作。 – madasionka