サイトアイコン CAD日記

プロパティシート

ソフト開発の話です。

私はVC6でソフトを作ってます。

ダイアログボックスの作りこみは、おもしろいものです。

プログラマーにとっては、デザイン的センスを問われる分野ですかね。

プロパティシートとは、ページで切り替えられるようなものです。

CPropertySheetに、CPropertyPageを、AddPageします。

MFC的にはけっこう特殊なつくりになっているらしく、

はまると抜け出せない世界に迷いむことが、ままあります。

直近のはまりは、

プロパティシートに最小化ボタンや最大化ボタンをつけられないか、ということ。

シート側はダイアログテンプレートがないので、テンプレートの属性で制御することが

できません。どうやったらいいかわからないです。

あれこれ調べて、導き出した結論が以下の通り。

案外簡単でした。

BOOL CMyPropertySheet::OnInitDialog()

{

 BOOL bResult = CPropertySheet::OnInitDialog();

 ModifyStyle(0, WS_MINIMIZEBOX | WS_THICKFRAME );

 CMenu* pMenu = GetSystemMenu(FALSE);

 pMenu->AppendMenu(MF_STRING, SC_MINIMIZE, _T(“最小化(&N)”));

 ...

}

モバイルバージョンを終了