Qt視窗螢幕居中顯示

2021-07-29 10:02:34 字數 804 閱讀 4889

視窗的螢幕居中顯示問題,在各開發工具中原理相同,首先使用特定的方法得到顯示螢幕的寬度和高度,再根據視窗本身的寬度和高度計算出視窗的左上角座標位置.

qt中可以採用兩種方法達到視窗的螢幕居中顯示:

方法一: 顯示前先計算出視窗顯示位子,並移到對應位子後再顯示視窗

在窗體類的構造方法中,如果使用 setfixedsize(800, 600); 設定了視窗的固定大小, 則執行程式時能達到視窗居中顯示效果, 否則視窗並不能按所期望的居中顯示在螢幕中,需要採用下面的方法,在移動和顯示視窗前重新設定下視窗的大小.

w.resize(800, 600);

w.move((pdesk->width() - w.width()) / 2, (pdesk->height() - w.height()) / 2);

w.show();

return a.exec();}

方法二: 視窗顯示後再移動到合適的位子

w.show();

w.move((pdesk->width() - w.width()) / 2, (pdesk->height() - w.height()) / 2);

return a.exec();}

先顯示後移動容易產生視窗閃爍,本人不建議採用方法二.

注意:1 使用qtextcodec::setcodecfortr(qtextcodec::codecforname("gb18030"));

請引入: #include

2 不能將引數 1 從「qdesktopwidget *」轉換為「qwidget *」

請引入: #include

Qt視窗螢幕居中顯示

視窗的螢幕居中顯示問題,在各開發工具中原理相同,首先使用特定的方法得到顯示螢幕的寬度和高度,再根據視窗本身的寬度和高度計算出視窗的左上角座標位置.qt中可以採用兩種方法達到視窗的螢幕居中顯示 方法一 顯示前先計算出視窗顯示位子,並移到對應位子後再顯示視窗 在窗體類的構造方法中,如果使用 setfix...

QT居中螢幕顯示

設定視窗居中顯示 方法一 在視窗 qwidget類及派生類 的建構函式中新增如下 include move desktop width this width 2,desktop height this height 2 重新編譯後,該視窗啟動時在螢幕居中的位置。方法二 在呼叫show 函式後呼叫mo...

Qt 獲取螢幕的中點,使視窗居中

qt 獲取桌面的寬度 int width deskrect.width 2 int heigth deskrect.height 2 int curwidth this width this代表當前視窗本身 int curheigth this height this setgeometry wid...