【Qt】Qt窗口几何布局
生活随笔
收集整理的這篇文章主要介紹了
【Qt】Qt窗口几何布局
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
00. 目錄
文章目錄
- 00. 目錄
- 01. 概述
- 02. 開發環境
- 03. 窗口幾何布局
- 04. 程序示例
- 05. 窗口部件設置
- 06. 附錄
01. 概述
QT中的坐標系統以左上角為原點,水平為x軸,從左向右為正向,垂直為y軸,從上到下為正向。
02. 開發環境
Windows系統:Windows10
Qt版本:Qt5.15或者Qt6
03. 窗口幾何布局
GUI程序在坐標系統中進行窗口和部件的定位
定位類型分為:
-
頂級窗口部件的定位
-
窗口內部件的定位
-
窗口部件的大小設置
QT使用統一的坐標系統定位窗口部件的位置和大小
QT部件類提供成員函數在坐標系統中進行定位
QWidget類提供了窗口部件所需的坐標系統成員函數
這里的函數分為兩類,一類是包含框架的,一類是不包含框架的。
包含窗口框架的函數有:
Including the window frame: x(), y(), frameGeometry(), pos(), and move().不包含窗口框架的函數有:
Excluding the window frame: geometry(), width(), height(), rect(), and size().04. 程序示例
#include "widget.h"#include <QApplication> #include <QDebug>int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w(nullptr, Qt::Window);//設置主窗口的位置w.move(0, 0);//設置主窗口客戶區的大小w.resize(480, 320);//設置標題欄w.setWindowTitle(QObject::tr("湖北武漢"));w.show();//輸出邊框幾何信息qDebug() << "輸出邊框幾何信息: ";qDebug() << " x: " << w.x() << Qt::endl<< " y: " << w.y() << Qt::endl<< "x: " << w.frameGeometry().x() << Qt::endl<< "y: " << w.frameGeometry().y() << Qt::endl<< "width: " << w.frameGeometry().width() << Qt::endl<< "height: " << w.frameGeometry().height() << Qt::endl<< "pos: " << w.pos();qDebug() << "輸出客戶區幾何信息: ";qDebug() << " x: " << w.geometry().x() << Qt::endl<< " y: " << w.geometry().y() << Qt::endl<< "width: " << w.width() << Qt::endl<< "height: " << w.height() << Qt::endl<< "width: " << w.geometry().width() << Qt::endl<< "height: " << w.geometry().height() << Qt::endl;return a.exec(); }執行結果:
輸出邊框幾何信息: x: 0 y: 0 x: 0 y: 0 width: 482 height: 352 pos: QPoint(0,0)輸出客戶區幾何信息: x: 1 y: 31 width: 480 height: 320 width: 480 height: 320友情提示:
geometry()、frameGeometry()函數需要在show()函數后調用。QT平臺在窗口顯示出來之前無法確定窗口的大小。
05. 窗口部件設置
QWidget類提供了設置窗口部件大小和位置的成員函數
改變窗口部件的大小
void resize(const QSize &);void resize(int w, int h);改變窗口部件的位置
void move(int x, int y);void move(const QPoint &);06. 附錄
6.1 Qt教程匯總
網址:https://dengjin.blog.csdn.net/article/details/115174639
6.2 源碼下載
網址:
6.3 關鍵字索引
關鍵字:Window and Dialog Widgets
總結
以上是生活随笔為你收集整理的【Qt】Qt窗口几何布局的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Qt】窗口组件和窗口类型
- 下一篇: 【Qt】QObject详解