QT 學習 五 QT座標系統

2021-09-29 18:05:15 字數 1683 閱讀 9911

圖形檢視框架是基於笛卡爾座標系統的,乙個圖形項在場景中的位置和幾何形狀由x座標和y座標來表示。當使用乙個沒有變換的檢視來觀察場景時,場景中的乙個單元代表螢幕上的乙個畫素。在圖形檢視框架中有3個有效的座標系統:圖形項座標、場景座標和檢視座標。

圖形介面程式在座標系統中進行視窗和部件的定位。

定位型別:

-頂級視窗部件的定位

-視窗內部件的定位

-視窗部件的大小設定

qt使用統一的座標系統定位視窗部件的位置和大小

qt部件類提供成員函式在座標系統中進行定位

qwidget類提供了視窗部件所需的座標系統成員函式

qt中的幾何座標以左上角為原點:

qt中的gui元件以左上角進行定位

qt中的gui元件可以在座標系統中進行大小設定

qwidget類中的座標系統成員函式:

qwidget類提供了成員函式:

qpushbutton元件:

**示例:

qwidget w;

//生成qwidget物件,頂級元件

qpushbutton b

(&w)

;//生成qpushbutton物件,其父元件為qwidget

b.settext

("button");

//設定顯示的字串

b.move(10

,10);

//移動到座標(10,10)

b.resize

(100,25

);//設定大小為width = 100,height =25

qlineedit元件:

//生成qwidget物件,頂級元件

qwidget w;

//生成qlineedit物件,其父元件為qwidget

qlineedit le

(&w)

;//設定顯示的字串向右邊對齊

le.setalignment

(qt::alignright)

;//移動到座標(10,10)

le.move(10

,10);

//設定大小width=240,height=30

le.resize

(240,30

);

總體示例**:

#include

#include

#include

#include

"mainwindow.h"

intmain

(int argc,

char

*ar**)

編譯結果:

qwidget:

300400

300200

qwidget::

geometry()

309438

300200

qwidget::

framegeometry()

300400

318247

注意事項:

geometry和framegeometry中的幾何資料必須在show()呼叫後才有效。

Qt 座標系統

1 move 移動位置 對於父視窗 主視窗 座標系統相對於螢幕 原點 相對於螢幕左上角 x 往右遞增 y 往下遞增 move 100,100 座標相對於螢幕 子視窗,座標系統相對于父視窗 原點 相對於視窗空白區域左上角 不包括邊框 x 往右遞增 y 往下遞增 qpushbutton b1 new q...

Qt座標系統

座標變換 world corrdinates window coordinates device coordinates 邏輯座標 世界變換 中間態座標 視窗視口變換 物理座標 在預設情況下,3個座標系是一致的。世界變換 qpainter setworldmatrixenabled 啟用 禁用世界變...

Qt座標系統

座標變換 world corrdinates window coordinates device coordinates 邏輯座標 世界變換 中間態座標 視窗視口變換 物理座標 在預設情況下,3個座標系是一致的。世界變換 qpainter setworldmatrixenabled 啟用 禁用世界變...