はじめまして。今週からVC++6.0を使っている初心者です。
プロパティーシートを使ったモーダルダイアログで「適用」「ヘルプ」ボタンを非表示にしたいのですが、
わかりません。
ラウンジ(検索)で、「ヘルプボタンを消すには?」というのがあったのですが、私が作成している画面は
階層になっていて、ダイアログ1のボタンを押すとダイアログ2がモーダルで表示され、さらにダイアログ2の
ボタンを押すとプロパティート(ページ)が表示されます。
「ダイアログ1」→「ダイアログ2」→「プロパティシート」
CxxxAPPのInitInstance()のなかにどのようなコードを書けばよいのか教えてください。ダイアログ2とプロパティ
シートのヘッダファイルもインクルードしているのですが動きません。
どうかよろしくお願いします。
例えば2つのページを持つプロパティシートをDoModalする場合、
CProperty cSheet(property sheet);
cSheet.m_psh.dwFlags |= PSH_NOAPPLYNOW;
cSheet.m_psh.dwFlags &= ~PSH_HASHELP;
CPage1 cPage1;
cPage1.m_psp.dwFlags &= ~PSP_HASHELP;
CPage2 cPage2;
cPage2.m_psp.dwFlags &= ~PSP_HASHELP;
cSheet.AddPage(&cPage1);
cSheet.AddPage(&cPage2);
cSheet.DoModal();
とすればいいです。
なお、CPropertyはCPropertySheetの派生クラス、CPage1、CPage2はCPropertyPageの派生クラスです。
Cdsさんリプライどうもありがとうございます。
質問なんですが、上記のコードはCxxxAPPのInitInstance()のなかに書くものではないのですか?
(試しにコードを書いて見ましたがダメでした)。
私の画面は(本を見て作ったのですが)、CProperty cSheet(property sheet);と、cSheet.DoModal();の部分は「ダイアログ2」のボタンを押したときのコードに、cSheet.AddPage(&cPage1);と、cSheet.AddPage(&cPage2);の
部分はプロパティーシートのcppの中に書いています。
初歩的なことで大変申し訳ないのですが、教えていただけませんか?お願いします。
↓(参考)
私が作成している画面は階層になっていて、ダイアログ1のボタンを押すとダイアログ2が表示され、
さらにダイアログ2のボタンを押すとプロパティシート(ページ)が表示されます。
Cdsさんリプライどうもありがとうございます。
質問なんですが、上記のコードはCxxxAPPのInitInstance()のなかに書くものではないのですか?
(試しにコードを書いて見ましたがダメでした)。
私の画面は(本を見て作ったのですが)、CProperty cSheet(property sheet);と、cSheet.DoModal();の部分は「ダイアログ2」のボタンを押したときのコードに、cSheet.AddPage(&cPage1);と、cSheet.AddPage(&cPage2);の
部分はプロパティーシートのcppの中に書いています。
初歩的なことで大変申し訳ないのですが、教えていただけませんか?お願いします。
↓(参考)
私が作成している画面は階層になっていて、ダイアログ1のボタンを押すとダイアログ2が表示され、
さらにダイアログ2のボタンを押すとプロパティシート(ページ)が表示されます。
>質問なんですが、上記のコードはCxxxAPPのInitInstance()のなかに書くものではないのですか?
>(試しにコードを書いて見ましたがダメでした)。
なぜCxxxAPPのInitInstance()が出てくるのでしょう...。
別にそこでもできますけど、メインのダイアログが表示される前(か後)にプロパティシートが表示するだけです。
駄目だったのはヘッダが定義されてないとかでしょう、多分。
>さらにダイアログ2のボタンを押すとプロパティシート(ページ)が表示されます。
そこでプロパティシートをDoModalしてるんですよね...。
そこってのはCDialog::OnButton()です。
その前に2つ3つフラグを変えるだけなんですけど。
AddPageをシート側でしているのならその前にページのフラグを変えればいいだけです。
#プロパティシートもさほど難しくはないですが、もっと基本的なことから始めることをお奨めします。
Cdsさんありがとうございました。
プロパティシートの中に記述したらできました!
つまらない質問してごめんなさい・・・私もっと勉強します。
また拙い質問すると思いますがこれからも宜しくお願いします。
どうもありがとうございました。