VC初心者です。
ダイアログベースで作成されたアプリケーションに「ツールバー」もしくは「ダイアロ
グバー」を付けたいのですが、方法が分かりません。ご教授願います。
追記いたします。
開発環境は WinXP SP2, VC++6.0 SP6, MFCです。
ダイアログバーやツールバーの取り付け方は、ネット上で探すとSDIで作成したものに追
加する方法ばかりでダイアログベースのものがなくて困っています。(OnCreate関数が
無いので、どこにソース追加などをすれば良いのか分かりません)
よろしくお願いいたします。
ダイアログウィンドウの初期化などはOnCreate関数の代わりに
OnInitDialog関数を使用するのだったと思います。
回答ではないですが、こういう場合、CFormViewを使った方が良いのでは?
>OnCreate関数が
>無いので、どこにソース追加などをすれば良いのか分かりません)
WM_CREATEをハンドリングすれば追加できますよ。
OnInitDialogでMoveWindowを使って場所を移動させないと、
どこかとんでもない所にあって、見えなかったりします。
あと、ダイアログバー貼り付けると、枠をなしにしても
ダイアログバーの上に一本棒が出てきてしまいます。
OnPaintで線を描画してごまかしていますが、良い方法あるのかな。
たいちうさんと同じ意見ですが、新規作成ウィザードで「SDI」を選択しステップ6で基本クラ
スの項目を「CFormView」を選ぶのが一番楽です。ためしに使ってみてはどうでしょうか?
返答が遅くなって申し訳ありません。
>天宮 小百合さん
そうなのですね。
そんなことも知らないくらいにVC初心者で非常に困っております。
OnInitDialogに追記したらツールバーは付くようになりました。
ありがとうございました。
>ゆうさん
>WM_CREATEをハンドリングすれば追加できますよ。
すみません、かなりの初心者なもので、
「WM_CREATEをハンドリング」する、ということが
どういうことを指しているのかすら分からない状態です。
たいへん申し訳ありませんが、まだこの投稿をご覧になる機会が
ありましたらもう少し詳しくお教えいただけないでしょうか?
本当にすみません。
>たいちうさん、はっぱさん
SDIで作るべきだったと思うのですが、既存アプリの改造のため、
ダイアログベースという部分は変更できないんです・・・。
こちらの説明不足で申し訳ありませんでした。
クラスビューで、該当ダイアログクラスを右クリックして、
windowsメッセージハンドラの追加でWM_CREATEを選びます。
まずは何か1冊入門書購入した方が良いですよ。
なぜメッセージハンドラを知らないでツールバーの実装ができるの
かが不思議です。