2012-02-06 4 views
0

QmlApplicationViewerのサイズを制御するにはどうすればよいですか?私はQMLアプリケーションのランチャーとしてQmlApplicationViewerを使用しています、と私はサイズを問い合わせる場合QMLで、私は、QmlApplicationViewer :: setFixedSizeはxwininfoの同じサイズを反映しません

QmlApplicationViewer viewer; 
viewer.setFixedSize(1280,720); 

が、X11側では...とサイズを設定します。 Cpp側で要求されたサイズと一致しません。

xwininfo -root -children | grep application_name 

誰でも教えてください。どのようにQt/QMLコードでサイズを制御できますか?

ご協力いただきありがとうございます。 1を得ることができない場合は、1つ、WMは素晴らしいプレー/または無ウィンドウマネージャを持っていないために何ができるか

+0

xwininfoにはおそらくウィンドウ装飾が含まれていますか?次に、QWidget :: frameGeometryを考慮に入れる必要があります。 (frameGeometry()。height() - geometry()。height()は、フレームとタイトルバーの高さを指定する必要があります)。 –

+0

私の設定ではウィンドウマネージャやウィンドウ装飾はアクティブではありません。クロスコンパイルされたQtを使った最小限のX実行...結果はQt5と同様に4.8以上です: –

答えて

0

は、(右setFixedSize前コンストラクタと 後 あなたのトップレベルウィンドウでこのフラグを設定することです):

viewer.setWindowFlags(viewer.windowFlags()| Qt :: X11BypassWindowManagerHint);

このフラグのドキュメントを注意してください。しない限り、あなた コールのQWidget :: activateWindow

「バイパスウィンドウマネージャは完全にこれは、すべてで管理されていないボーダレス 窓(すなわち、なしキーボード入力になり()手動で)

関連する問題