wxWidgetsでウィンドウを最大化する

目次

意外とこの情報が見つからなかったのでまとめておきます。

参考にしていただけると幸いです。

wxGladeで適当なウィンドウを作ります。

パネルのみという非常にシンプルなサンプルになります。

パネルのサイズを適当に決めておきます。

SnapCrab NoName 2017 9 23 21 59 52 No 00

パネルが親のサイズに従って伸び縮みするようにwxEXPANDにチェックを入れておきます。

SnapCrab NoName 2017 9 23 22 0 7 No 00

フレームを最大化するためにwxMAXIMIZEにチェックを入れます。

あと、wxDEFAULTFRAMESTYLEにもチェックを入れておきます。

実はこれをチェックしなくても拡大できたのですが、必要みたいです。

Window以外での動作は確認してないので何とも言えないですが、偉い人が必要というなら必要なのでしょう(笑)

チェックしない場合は、この2つ両方のチェックを外します。

SnapCrab NoName 2017 9 23 22 19 45 No 00

この設定だけでは最大化できません。

最大化したい場所でMaximize();を呼び出します。

OnInit()関数で作成しているframe_1ウィンドウを最大化したいので、アロー演算子を使って、

frame_1->Maximize();

とするか、wxFrameクラスを継承したMyFrameクラスの中で、

Maximize();

もしくは、

this->Maximize();

としても最大化できます。

SnapCrab NoName 2017 9 23 22 34 9 No 00

これで完成です。