C++BuilderでMDIの子画面を整理する


C++Builderはかれこれ使っているのだけど、MDIアプリは大昔に遊びで一回書いただけでそれから一回も使っていなかった。

最近久々に使う機会があったのだけど、MDIアプリにつきものの「ウィンドウ」メニューの中にある「並べて表示」とか「重ねて表示」の実現の方法がわからなくなった。

Google様にお伺いを立ててもなかなかお答えを頂けなくて弱ったのだけど、Delphiの情報まで検索してやっとわかった。

今後のためにメモっておこう。
【並べて表示】

void __fastcall TfrmMAIN::N8Click(TObject *Sender)
{
    // 並べて表示
    Tile();
}


【重ねて表示】

void __fastcall TfrmMAIN::N9Click(TObject *Sender)
{
    // 重ねて表示
    Cascade();
}


【アイコンの整列】

void __fastcall TfrmMAIN::I1Click(TObject *Sender)
{
    // アイコンの整列
    ArrangeIcons();
}


めちゃ簡単。

ついでに書いておくと、この下に開いている子フォームのリストを入れるには、親フォームの「WindowMenu?」プロパティに「ウィンドウ・メニュー」をセットしておくだけでいい。 ただ、C++Builderのバグがあるらしく、ウィンドウ・メニューの中に区切り線(Captionが「-」のもの)があるとうまく動かないらしい。

Shue

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-03-08 (金) 23:37:24 (2915d)