Qt学习之路3---Qt中的坐标系统

-Qt使用统一的坐标系统定位窗口部件和位置大小

-Qt部件类提供成员函数在坐标系统中进行定位

-QWidget类提供了窗口部件所需的坐标系统成员函数

代码测试

 1 #include "widget.h"
 2 #include <QApplication>
 3 #include <QDebug>
 4 
 5 int main(int argc, char *argv[])
 6 {
 7     QApplication a(argc, argv);
 8     Widget w;//这是一个空的widget
 9     w.resize(300,300);//设置的是geometry的x和y大小及
10     w.move(100,100);
11     w.show();
12     qDebug()<<"全局";
13     qDebug()<<w.x();
14     qDebug()<<w.y();
15     qDebug()<<w.width();
16     qDebug()<<w.height();
17     qDebug()<<"geometry";
18     qDebug()<<w.geometry().x();
19     qDebug()<<w.geometry().y();
20     qDebug()<<w.geometry().width();
21     qDebug()<<w.geometry().height();
22     qDebug()<<"framegeometry";
23     qDebug()<<w.frameGeometry().x();
24     qDebug()<<w.frameGeometry().y();
25     qDebug()<<w.frameGeometry().width();
26     qDebug()<<w.frameGeometry().height();
27     /*summer*/
28     //直接的x ,y 函数的x和y与framegeometry的x和y相同
29     //直接的width,height函数,和geometry的width和height相同
30     //framegeometry的宽度要加上边框,在win10下面,左右边框为8,上为31,下为8
31     //test-data
32   /*  全局
33     355
34     93
35     640
36     480
37     geometry
38     363
39     124
40     640
41     480
42     framegeometry
43     355
44     93
45     656
46     519
47             */
48     return a.exec();
49 }

NOTE:geometry()和frameGeometry()中的几何数据必须在show()之后调用才有效。

原文地址:https://www.cnblogs.com/yangguang-it/p/6393455.html