0
我有一個主要的寡婦。我將它移動到底部邊緣或角落。然後點擊它中的某個按鈕打開一個對話框。該對話框位於主窗口的中心,因爲我將主窗口設置爲其父窗口。但是,由於主窗口位於邊緣或角落,因此對話框不會顯示在屏幕上。如何使其顯示在屏幕上?如何處理顯示在屏幕外的QDialog?
我有一個主要的寡婦。我將它移動到底部邊緣或角落。然後點擊它中的某個按鈕打開一個對話框。該對話框位於主窗口的中心,因爲我將主窗口設置爲其父窗口。但是,由於主窗口位於邊緣或角落,因此對話框不會顯示在屏幕上。如何使其顯示在屏幕上?如何處理顯示在屏幕外的QDialog?
可以直到它變成屏幕上的負座標move
它:
dialog.move(-dialog.width(), -dialog.height())
所以它的右下角邊緣這應該將它與主窗口的左上邊緣對齊。
或者你可以讓對話框父母雙亡的孤兒,並相對於屏幕移動它,而不是座標:
dialog.setParent(None)
dialog.move(400, 300)
你知道如何檢查它是否是出屏? – user1899020
@ user1899020:http://qt-project.org/doc/qt-5.1/qtwidgets/qwidget.html#visible-prop但是您可以隨時詢問位置並與屏幕座標進行比較,前者無法解決。 – lpapp
@ user1899020:這可能應該是另一個問題。但這取決於小部件是否有父母。 – MadeOfAir