赞
踩
实验1:窗口坐标大小
- #include <QtGui/QApplication>
- #include <QPushButton>
- #include <QDebug>
- #include "widget.h"
- int main(int argc, char *argv[])
- {
- QApplication a(argc, argv);
- Widget w;
- w.show();
- qDebug()<<"QWidget:";
- qDebug()<<w.x();
- qDebug()<<w.y();
- qDebug()<<w.width();
- qDebug()<<w.height();
- qDebug()<<"QWidget::geometry()";
- qDebug()<<w.geometry().x();
- qDebug()<<w.geometry().y();
- qDebug()<<w.geometry().width();
- qDebug()<<w.geometry().height();
- qDebug()<<"QWidget::frameGeometry()";
- qDebug()<<w.frameGeometry().x();
- qDebug()<<w.frameGeometry().y();
- qDebug()<<w.frameGeometry().width();
- qDebug()<<w.frameGeometry().height();
- return a.exec();
- }
-
- QWidget:
- 192
- 192
- 400
- 300
- QWidget::geometry()
- 201
- 230
- 400
- 300
- QWidget::frameGeometry()
- 192
- 192
- 418
- 347
实验2: 每个平台有自己的最小窗口设定,如果代码中设置的窗口大小 小于平台规定大小,那么会默认调整为平台规定的最小大小。
- #include <QtGui/QApplication>
- #include <QPushButton>
- #include <QDebug>
- #include "widget.h"
- int main(int argc, char *argv[])
- {
- QApplication a(argc, argv);
- Widget w;
- w.resize(100, 100);
- w.move(120, 120);
- w.show();
- qDebug()<<"QWidget:";
- qDebug()<<w.x();
- qDebug()<<w.y();
- qDebug()<<w.width();
- qDebug()<<w.height();
- qDebug()<<"QWidget::geometry()";
- qDebug()<<w.geometry().x();
- qDebug()<<w.geometry().y();
- qDebug()<<w.geometry().width();
- qDebug()<<w.geometry().height();
- qDebug()<<"QWidget::frameGeometry()";
- qDebug()<<w.frameGeometry().x();
- qDebug()<<w.frameGeometry().y();
- qDebug()<<w.frameGeometry().width();
- qDebug()<<w.frameGeometry().height();
- return a.exec();
- }
-
-
- QWidget:
- 120
- 120
- 152
- 100
- QWidget::geometry()
- 129
- 158
- 152
- 100
- QWidget::frameGeometry()
- 120
- 120
- 170
- 147
实验3:QPushButton 使用
- #include <QtGui/QApplication>
- #include <QPushButton>
- #include <QDebug>
- #include "widget.h"
- int main(int argc, char *argv[])
- {
- QApplication a(argc, argv);
- Widget w;
- QPushButton b(&w);// 生成 QPushButton对象, 其父组件为 QWidget
- QPushButton b1(&w);
- b.setText("Button");// 设置显示的字符串
- b.move(10, 10); // 移动到坐标 (10, 10)
- b.resize(100, 50); // 设置大小 width = 100, height = 25
-
- b1.setText("Button"); // 设置显示的字符串
- b1.move(120, 10); // 移动到坐标 (120, 10)
- b1.resize(100, 50); // 设置大小 width = 100, height = 25
-
- w.resize(100, 100);
- w.move(120, 120);
- w.show();
- qDebug()<<"QWidget:";
- qDebug()<<w.x();
- qDebug()<<w.y();
- qDebug()<<w.width();
- qDebug()<<w.height();
- qDebug()<<"QWidget::geometry()";
- qDebug()<<w.geometry().x();
- qDebug()<<w.geometry().y();
- qDebug()<<w.geometry().width();
- qDebug()<<w.geometry().height();
- qDebug()<<"QWidget::frameGeometry()";
- qDebug()<<w.frameGeometry().x();
- qDebug()<<w.frameGeometry().y();
- qDebug()<<w.frameGeometry().width();
- qDebug()<<w.frameGeometry().height();
- return a.exec();
- }
小结:
Qt中的几何坐标以左上角为原定。
- 水平为X轴,从左向右为正向。
- 垂直为Y轴,从上到下为正向。
Qt 中的GUI组件以左上角进行定位。
Qt 中的GUI组件可以在坐标系统中进行大小设置。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。