いつも大変お世話になってます。
早速質問なのですが、ダイアログバーの上にダイアログを置くというのは
できるのでしょうか?
というのも、ダイアログバーの上に普通にコントロールを配置していたところ
途中から急にコントロールの処理が反応しなくなりました。
処理としては、普通に ShowWindow で表示/非表示していただけです。
かなりの数のコントロールをしかも重ねて1つのダイアログバーに配置したので
その辺りに原因があるのでしょうか? ( 数としては50ちょっとです )
ちなみに、配置といってもダイアログーバーと同じ大きさのダイアログを作り
そこにコントロールを配置して、全選択のコピーペーストで
ダイアログバーに張り付けています。
質問が2種類になってしまい、申し訳ありませんが
ご教示の程、よろしくお願い致します。
自己レスですいません。
調べてみたところ、コントロールが反応しなくなるというのは
コピペしたときにIDが変わっているからでは…という感じがしました。
コピー前 コピー後
IDC_EDIT_01 → IDC_EDIT_02 という感じで。
それが原因なら納得なのですが、そしたら本来のIDC_EDIT_01が無くなってる以上
GetDlgItem で見つからずにプログラムが停止するのかと思いきや
そういうこともなく普通に動いてるわけで…なんなんでしょう?
#VSのリソースビューからリソースを編集していると状況と仮定して話します。
#違っていたら無視して下さい。
IDC_EDIT_01のダイアログをコピーすると、IDC_EDIT_2になったような気がしますが。。。
> それが原因なら納得なのですが、そしたら本来のIDC_EDIT_01が無くなってる以上
GetDlgItem で見つからずにプログラムが停止するのかと思いきや
そういうこともなく普通に動いてるわけで…なんなんでしょう?
コピーなら、IDC_EDIT_01はなくならないはずです。
取りあえず、全てのコントロールのプロパティから、IDの確認と、
resource.hを開いて、それぞれのIDの定義されている値を確認してみてはどうですか?
ご返答ありがとうございます。
恥ずかしながら、resource.h の存在を知りませんでした…
なるほど、こうやって定義してあるんですね。
いろいろ謎が解けた気がします。
ありがとうございました。
本当に、いつも素人みたいな質問ばかりで恐縮ですが
今後ともよろしくお願いいたします。