CAD日記

AutoCAD,DXF,DWG,SXFなどCADのことから、仮想通貨や投資関係、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

コンピュータの日付

痛い目にあった記録。 無料試用期間30日間、そんなソフトを開発している。 動作確認するために、コンピュータの日付を変更する。 日付を数日後に変更して「残り27日です」とちゃんと出るか。 もっと先の日付 …

扱えるテキストファイルの最大行数は1億行

扱えるテキストファイルの行数の限界が1億行なのが秀丸エディター。その他⇒動作環境⇒環境にて、編集可能な最大行数が10万行~1億行で設定できる(32bitの場合は1000万行まで)。1億行のテキストファ …

no image

円周率

3.1415926535…。私が記憶しているのはここまでです。スーパーコンピュータを使って数億桁まで計算、なんてニュースをよく聞きますね。コンピュータの性能向上とアルゴリズムの工夫に対する …

no image

USBメモリを小容量に見せかける方法

USBメモリの大容量化が年々加速している。 おいらが最初に買ったのが10年くらい前で、128MBで1万円くらいだったか。 今では、4GBが500円で買える時代になっている。 個人で使うには容量が多いに …

no image

いたちごっこ1

ソフト開発者とクラッカー。その果てしない戦いの日々をここに記します。現在進行形のその戦いに終止符を打つべく、努力を重ねている今、臨場感をもって伝えられれば、と思います。 その前に、「いたちごっこ」とい …