Qt提供了很多关于获取窗体位置及显示区域大小的函数,如x()、y()和pos()、rect()、size()和geometry()等。几种函数的主要区别如下:
- x()、y()和pos()函数的作用都是活的整个窗体左上角的坐标位置
- frameGeometry()函数和geometry()函数相对应。frameGeometry()函数获得的是整个窗体的左上顶点和长宽值,而geometry()函数获得的是窗体内中央区域的左上顶点坐标及长宽值。
- 直接调用width()和height()函数获得的是中央区域的长宽值。
- rect()和size()函数获得的结果也是对象窗体的中央区域而言的。size函数获得的是中央区域的长宽值。rect函数和geometry函数相同都是返回一个QRect对象,这两个函数获得的长宽值相同,只是左上顶点的坐标不一样,geometry函数获得的左上顶点的坐标是相对于父窗体而言的,而rect函数获得的左上顶点的坐标始终为(0,0)。