Qtでウィンドウを大きくしてもウィジェットのサイズが変わらない?

Qt Designer を使って GUI アプリケーションを作成する時、フォームに部品(ウィジェット)をペタペタ貼り付けていくだけではレイアウトが固定されており、例えばテキストエディタみたいなものを作ろうとして Text Edit ウィジェットを貼り付けても

実行してウィンドウを拡げた時に Text Edit の大きさが固定されたままである。

そこでプロパティエディタでウィジェットの sizePolicy プロパティを例えば Expanding に変更しただけでは何らの変化も起きなかった。「Qt」で検索してみてもコードで実現するサンプルはたくさん見つかるが、 Qt Designer を使って実現する例はなかなか見つからなかった。そこで「Qt Designer」で検索すると多少ヒントになりそうな記述が見つかった。

GUI アプリケーションプロジェクトを新規作成したばかりの時、フォームは mainwindow.ui というのが1つあるだけで、それを開くと MainWindow というオブジェクトに centralWidget というオブジェクトが乗っているだけだ。この状態でウィジェットを貼り付けていき、 MainWindow を選択して右クリックするとコンテキストメニューが開くはずだ。そしてコンテキストメニューの一番下に「レイアウト」という項目が無いだろうか。その中の適当な項目を選んでレイアウトを設定すると、オブジェクトインスペクタに表示されている centralWidget のアイコンについていた禁止マークが無くなる。

↓↓↓

この状態でビルドし、ウィンドウを拡げてみて欲しい。ウィンドウの大きさに合わせてウィジェットが大きくなっていないだろうか。

1件のコメント

返信を残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)