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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

frame_1->Maximize();

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

Maximize();

もしくは、

this->Maximize();

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

これで完成です。

あわせて読みたい