当前位置:   article > 正文

嵌入式Qt Qt 中的坐标系统

嵌入式Qt Qt 中的坐标系统

一.Qt中的坐标系统

实验1:窗口坐标大小

  1. #include <QtGui/QApplication>
  2. #include <QPushButton>
  3. #include <QDebug>
  4. #include "widget.h"
  5. int main(int argc, char *argv[])
  6. {
  7. QApplication a(argc, argv);
  8. Widget w;
  9. w.show();
  10. qDebug()<<"QWidget:";
  11. qDebug()<<w.x();
  12. qDebug()<<w.y();
  13. qDebug()<<w.width();
  14. qDebug()<<w.height();
  15. qDebug()<<"QWidget::geometry()";
  16. qDebug()<<w.geometry().x();
  17. qDebug()<<w.geometry().y();
  18. qDebug()<<w.geometry().width();
  19. qDebug()<<w.geometry().height();
  20. qDebug()<<"QWidget::frameGeometry()";
  21. qDebug()<<w.frameGeometry().x();
  22. qDebug()<<w.frameGeometry().y();
  23. qDebug()<<w.frameGeometry().width();
  24. qDebug()<<w.frameGeometry().height();
  25. return a.exec();
  26. }
  27. QWidget:
  28. 192
  29. 192
  30. 400
  31. 300
  32. QWidget::geometry()
  33. 201
  34. 230
  35. 400
  36. 300
  37. QWidget::frameGeometry()
  38. 192
  39. 192
  40. 418
  41. 347

 

实验2: 每个平台有自己的最小窗口设定,如果代码中设置的窗口大小 小于平台规定大小,那么会默认调整为平台规定的最小大小。 

  1. #include <QtGui/QApplication>
  2. #include <QPushButton>
  3. #include <QDebug>
  4. #include "widget.h"
  5. int main(int argc, char *argv[])
  6. {
  7. QApplication a(argc, argv);
  8. Widget w;
  9. w.resize(100, 100);
  10. w.move(120, 120);
  11. w.show();
  12. qDebug()<<"QWidget:";
  13. qDebug()<<w.x();
  14. qDebug()<<w.y();
  15. qDebug()<<w.width();
  16. qDebug()<<w.height();
  17. qDebug()<<"QWidget::geometry()";
  18. qDebug()<<w.geometry().x();
  19. qDebug()<<w.geometry().y();
  20. qDebug()<<w.geometry().width();
  21. qDebug()<<w.geometry().height();
  22. qDebug()<<"QWidget::frameGeometry()";
  23. qDebug()<<w.frameGeometry().x();
  24. qDebug()<<w.frameGeometry().y();
  25. qDebug()<<w.frameGeometry().width();
  26. qDebug()<<w.frameGeometry().height();
  27. return a.exec();
  28. }
  29. QWidget:
  30. 120
  31. 120
  32. 152
  33. 100
  34. QWidget::geometry()
  35. 129
  36. 158
  37. 152
  38. 100
  39. QWidget::frameGeometry()
  40. 120
  41. 120
  42. 170
  43. 147

 二.QPushButton 组件

实验3:QPushButton 使用

  1. #include <QtGui/QApplication>
  2. #include <QPushButton>
  3. #include <QDebug>
  4. #include "widget.h"
  5. int main(int argc, char *argv[])
  6. {
  7. QApplication a(argc, argv);
  8. Widget w;
  9. QPushButton b(&w);// 生成 QPushButton对象, 其父组件为 QWidget
  10. QPushButton b1(&w);
  11. b.setText("Button");// 设置显示的字符串
  12. b.move(10, 10); // 移动到坐标 (10, 10)
  13. b.resize(100, 50); // 设置大小 width = 100, height = 25
  14. b1.setText("Button"); // 设置显示的字符串
  15. b1.move(120, 10); // 移动到坐标 (120, 10)
  16. b1.resize(100, 50); // 设置大小 width = 100, height = 25
  17. w.resize(100, 100);
  18. w.move(120, 120);
  19. w.show();
  20. qDebug()<<"QWidget:";
  21. qDebug()<<w.x();
  22. qDebug()<<w.y();
  23. qDebug()<<w.width();
  24. qDebug()<<w.height();
  25. qDebug()<<"QWidget::geometry()";
  26. qDebug()<<w.geometry().x();
  27. qDebug()<<w.geometry().y();
  28. qDebug()<<w.geometry().width();
  29. qDebug()<<w.geometry().height();
  30. qDebug()<<"QWidget::frameGeometry()";
  31. qDebug()<<w.frameGeometry().x();
  32. qDebug()<<w.frameGeometry().y();
  33. qDebug()<<w.frameGeometry().width();
  34. qDebug()<<w.frameGeometry().height();
  35. return a.exec();
  36. }

 

小结:

Qt中的几何坐标以左上角为原定。

- 水平为X轴,从左向右为正向。

- 垂直为Y轴,从上到下为正向。

Qt 中的GUI组件以左上角进行定位。

Qt 中的GUI组件可以在坐标系统中进行大小设置。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/112759
推荐阅读
相关标签
  

闽ICP备14008679号