ダイアログベースのアプリにツールバーやダイアログバーを付けたい – プログラミング – Home

ダイアログベースのアプリにツールバーや...
 
通知
すべてクリア

ダイアログベースのアプリにツールバーやダイアログバーを付けたい


丼
 丼
(@丼)
ゲスト
結合: 20年前
投稿: 3
Topic starter  

VC初心者です。
ダイアログベースで作成されたアプリケーションに「ツールバー」もしくは「ダイアロ
グバー」を付けたいのですが、方法が分かりません。ご教授願います。


引用解決済
トピックタグ
丼
 丼
(@丼)
ゲスト
結合: 20年前
投稿: 3
Topic starter  

追記いたします。
開発環境は WinXP SP2, VC++6.0 SP6, MFCです。

ダイアログバーやツールバーの取り付け方は、ネット上で探すとSDIで作成したものに追
加する方法ばかりでダイアログベースのものがなくて困っています。(OnCreate関数が
無いので、どこにソース追加などをすれば良いのか分かりません)

よろしくお願いいたします。


返信引用
天宮 小百合
 天宮 小百合
(@天宮 小百合)
ゲスト
結合: 20年前
投稿: 1
 

ダイアログウィンドウの初期化などはOnCreate関数の代わりに
OnInitDialog関数を使用するのだったと思います。


返信引用
たいちう
 たいちう
(@たいちう)
ゲスト
結合: 23年前
投稿: 662
 

回答ではないですが、こういう場合、CFormViewを使った方が良いのでは?


返信引用
ゆう
 ゆう
(@ゆう)
ゲスト
結合: 23年前
投稿: 114
 

>OnCreate関数が
>無いので、どこにソース追加などをすれば良いのか分かりません)
WM_CREATEをハンドリングすれば追加できますよ。
OnInitDialogでMoveWindowを使って場所を移動させないと、
どこかとんでもない所にあって、見えなかったりします。
あと、ダイアログバー貼り付けると、枠をなしにしても
ダイアログバーの上に一本棒が出てきてしまいます。
OnPaintで線を描画してごまかしていますが、良い方法あるのかな。


返信引用
はっぱ
 はっぱ
(@はっぱ)
ゲスト
結合: 20年前
投稿: 10
 

たいちうさんと同じ意見ですが、新規作成ウィザードで「SDI」を選択しステップ6で基本クラ
スの項目を「CFormView」を選ぶのが一番楽です。ためしに使ってみてはどうでしょうか?


返信引用
丼
 丼
(@丼)
ゲスト
結合: 20年前
投稿: 3
Topic starter  

返答が遅くなって申し訳ありません。

>天宮 小百合さん
そうなのですね。
そんなことも知らないくらいにVC初心者で非常に困っております。
OnInitDialogに追記したらツールバーは付くようになりました。
ありがとうございました。

>ゆうさん
>WM_CREATEをハンドリングすれば追加できますよ。
すみません、かなりの初心者なもので、
「WM_CREATEをハンドリング」する、ということが
どういうことを指しているのかすら分からない状態です。
たいへん申し訳ありませんが、まだこの投稿をご覧になる機会が
ありましたらもう少し詳しくお教えいただけないでしょうか?
本当にすみません。

>たいちうさん、はっぱさん
SDIで作るべきだったと思うのですが、既存アプリの改造のため、
ダイアログベースという部分は変更できないんです・・・。
こちらの説明不足で申し訳ありませんでした。


返信引用
ゆう
 ゆう
(@ゆう)
ゲスト
結合: 23年前
投稿: 114
 

クラスビューで、該当ダイアログクラスを右クリックして、
windowsメッセージハンドラの追加でWM_CREATEを選びます。

まずは何か1冊入門書購入した方が良いですよ。
なぜメッセージハンドラを知らないでツールバーの実装ができるの
かが不思議です。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました