街中で見かけて「グッときた人」の思い出

以下の環境にてタブコントロールを実装しようとしています。
・VisualStudio2008 VC++
・ネイティブ(.NET未使用)
・ダイアログベース、スタティックライブラリ

タブを表示させるメインダイアログと他に、子ダイアログ3つを用意して
タブが押されたときに表示をON/OFF(ShowWindow使用)させるものを作ったのですが、
以下の問題が出ています。
うまい対策または、タブコントロールの文献で参考になるサイトを教えてください。
[現象と質問]
・メインダイアログを移動させると子ダイアログが追従しない。
 → OnPaint()にてOnTcnSelchangeSelectTab()を呼ぶようにしたら追従しましたが、
   すばやくダイアログを動かすと、子ダイアログが遅れてついてくるように見えてしまいます。
   子ダイアログを追従させるうまい方法(本来のやりかた)はどうすればよいでしょうか。
・子ダイアログをクリックすると、メインダイアログのタイトルが薄くなる(裏に隠れるような感じ)。
 → メインダイアログと子ダイアログのプロパティの組み合わせでなんとかなると思っていますが、
   どのようにしたらいいのか、てこずっています。
   アドバイスをいただけたらと思います。

A 回答 (1件)

子ダイアログをポップアップウィンドウで作成してませんか?


この場合、子ダイアログはチャイルドウィンドウとして、子ダイアログの親ウィンドウに、タブコントロールを指定するのがいいでしょう。

私が想像している作成方法だと、子ダイアログにフォーカスがある場合に、TABキーで親ダイアログのコントロールに移動できないなどの弊害も発生するはずです。
    • good
    • 0
この回答へのお礼

お返事遅くなりました。

まさにおっしゃるとおりで、ポップアップウィンドウになっていました。
子ダイアログにしたところ、問題となっていた現象が解決しました。
ありがとうございます。

VC++は慣れるまで難しいです;;

お礼日時:2012/03/26 21:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報