2013-03-04 18 views
7

Obecnie rozwijam aplikację, w której nie można używać okien modalnych (ze względu na pewne ograniczenia aplikacji). Jednak w niektórych przypadkach chciałbym symulować okno wyskakujące. Aby to zrobić, dynamicznie utworzę widget, który ma centralną wielkość jako obiekt nadrzędny, i używam metody move(), aby umieścić ją tam, gdzie chcę. Chciałbym wiedzieć, czy istnieje sposób na uzyskanie wymiarów widżetu w danym czasie (biorąc pod uwagę, że w każdej chwili można zmienić rozmiar okna głównego), dzięki czemu będę w stanie wyśrodkować okienko zastępcze (prosty widget) na środku głównej centrali.Pyqt jak uzyskać wymiary widżetu

Dziękuję

Odpowiedz

1

Można użyć frameGeometry lub geometry zależności your needs.

+3

To nie jest poprawna odpowiedź, jeśli nie dają przykład roboczy . Kopiuj tylko wklejanie dokumentów nie jest odpowiedzią. Dlatego @subin george udzielił poprawnych odpowiedzi. – GLHF

+1

@GLHF pomimo poprawności instrukcji ... OP nie podaje kodu. To wszystko teoretyczne; dlatego też ja Avaris jego teoretyczna odpowiedź jest również poprawna ;-)) – ZF007

8

Dla gettting rozmiar ekranu

import sys 
from PyQt4 import QtGui, QtCore 

app = QtGui.QApplication(sys.argv) 

mainWindow = QtGui.QWidget() 
screenShape = QtGui.QDesktopWidget().screenGeometry() 
mainWindow.resize(self.screenShape.width(), self.screenShape.height()) 
mainWindow.show() 
10

dla uzyskania wielkości Qt Widget:

import sys 
from PyQt4 import QtGui, QtCore 

app = QtGui.QApplication(sys.argv) 

mainWindow = QtGui.QWidget() 
width = mainWindow.frameGeometry().width() 
height = mainWindow.frameGeometry().height() 
Powiązane problemy