Qt provides a number of functions for getting the position of the form and the size of the display area
Code:
1 fromPyqt4.qtguiImport*2 fromPyqt4.qtcoreImport*3 ImportSYS4 5 classGeometry (qdialog):6 7 def __init__(Self, parent=None):8Super (Geometry, self).__init__(parent)9 TenSelf.setwindowtitle ("Geometry") One ALabel1 = Qlabel ("x0:") -Label2 = Qlabel ("y0:") -Label3 = Qlabel ("framegeometry ():") theLabel4 = Qlabel ("POS ():") -Label5 = Qlabel ("geometry ():") -Label6 = Qlabel ("width ():") -Label7 = Qlabel ("height ():") +Label8 = Qlabel ("rect ():") -Label9 = Qlabel ("size ():") + ASelf.xlabel =Qlabel () atSelf.ylabel =Qlabel () -Self.framegeolabel =Qlabel () -Self.poslabel =Qlabel () -Self.geolabel =Qlabel () -Self.widthlabel =Qlabel () -Self.heightlabel =Qlabel () inSelf.rectlabel =Qlabel () -Self.sizelabel =Qlabel () to +Layout =qgridlayout () - layout.addwidget (label1, 0, 0) theLayout.addwidget (Self.xlabel, 0, 1) *Layout.addwidget (Label2, 1, 0) $Layout.addwidget (Self.ylabel, 1, 1)Panax NotoginsengLayout.addwidget (LABEL3, 2, 0) -Layout.addwidget (Self.framegeolabel, 2, 1) theLayout.addwidget (Label4, 3, 0) +Layout.addwidget (Self.poslabel, 3, 1) ALayout.addwidget (Label5, 4, 0) theLayout.addwidget (Self.geolabel, 4, 1) +Layout.addwidget (LABEL6, 5, 0) -Layout.addwidget (Self.widthlabel, 5, 1) $Layout.addwidget (LABEL7, 6, 0) $Layout.addwidget (Self.heightlabel, 6, 1) -Layout.addwidget (Label8, 7, 0) -Layout.addwidget (Self.rectlabel, 7, 1) theLayout.addwidget (LABEL9, 8, 0) -Layout.addwidget (Self.sizelabel, 8, 1)Wuyi the self.setlayout (Layout) - Wu Self.updatelabel () - #Redefine Qwidget's moveevent () and resizeevent () functions, responding to the dialog's move events and resizing events, respectively , About #allows the form to update the display of function results synchronously when it is moved or when the size of the form changes $ defmoveevent (Self, event): - Self.updatelabel () - - defresizeevent (Self, Event): A Self.updatelabel () + #The Updatelabel () function is responsible for invoking the various positional functions to obtain the results and display the defUpdatelabel (self): - $temp =QString () the the Self.xLabel.setText (Temp.setnum (self.x ())) the Self.yLabel.setText (Temp.setnum (SELF.Y ())) theSelf.frameGeoLabel.setText (Temp.setnum (Self.framegeometry (). x ()) +","+ -Temp.setnum (Self.framegeometry (). Y ()) +","+ inTemp.setnum (Self.framegeometry (). Width ()) +","+ the Temp.setnum (Self.framegeometry (). Height ())) theSelf.posLabel.setText (Temp.setnum (Self.pos (). x ()) +","+ About Temp.setnum (Self.pos (). Y ())) theSelf.geoLabel.setText (Temp.setnum (Self.geometry (). x ()) +","+ theTemp.setnum (Self.geometry (). Y ()) +","+ theTemp.setnum (Self.geometry (). Width ()) +","+ + Temp.setnum (Self.geometry (). Height ())) - Self.widthLabel.setText (Temp.setnum (Self.width ())) the Self.heightLabel.setText ((Temp.setnum (Self.height () ))BayiSelf.rectLabel.setText (Temp.setnum (Self.rect (). x ()) +","+ theTemp.setnum (Self.rect (). Y ()) +","+ theTemp.setnum (Self.rect (). Width ()) +","+ - Temp.setnum (Self.rect (). Height ())) -Self.sizeLabel.setText (Temp.setnum (Self.size (). Width ()) +","+ the Temp.setnum (Self.size (). Height ())) the the theApp =qapplication (SYS.ARGV) -form =Geometry () the form.show () theAPP.EXEC_ ()
All kinds of location information