CAD日記

主にAutoCADのことについて書いているけど、近頃は投資系ネタに注力している。自動売買、仮想通貨、PC関係、プログラミングなど。@caddiary

ソフト開発

プロパティシート

投稿日:

ソフト開発の話です。

私は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)”));

 ...

}

-ソフト開発
-

執筆者:


  1. ness より:

    BOOL bResult = CPropertySheet::OnInitDialog();
    ModifyStyle(0, WS_MINIMIZEBOX | WS_THICKFRAME, SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE | SWP_FRAMECHANGED);
    タイトルバーの再描画を行わせます。

  2. CAD日記 より:

    うむむ。
    そういう方法もあるってことかな。
    検証する気力はないけれど...。

comment

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

PMサーバー版リリース

ペーパーモデル化ツールサーバー版の宣伝。 詳しくは、kensetsu21のこちらのサイト(PDF)をご覧あれ。 クライアントは、サーバー上の共有フォルダにファイルを ドラッグ&ドロップするだけ。 サー …

no image

イテレータ(Iterator)

あるコンポーネントで初めて出会いました。コンポーネントがバージョンアップされたときに、オブジェクト指向的な作りに一新されて、いろいろ変わったのですが中でもイテレータという訳の分からないものに遭遇して、 …

PDFiumでPDFを描画してみたけど、こんなに簡単にできちゃっていいのかよ!

PDFiumで画像化とテキスト抽出が容易にできることは前回まででわかっていたので、今回は描画に取り組んでみた。

zipcopy Ver1.01リリース

以下でアップしていたzipcopyについて、ちょいと手直ししてVer1.01としてリリースする。 zipcopy~圧縮してコピー~ができたのでアップしておく zipcopyのダウンロードはここをクリッ …

zipcopy Ver1.07リリース

zipcopyをリビジョンアップして、Ver1.07とした。 詳細は以下の通り。 Ver1.07 2020/3/1 ・zip圧縮と解凍、ファイルコピーと削除処理についてスレッド化して、これら処理中にダ …