今、モーダレスのプロパティシートを持つダイアログベースのアプリケーションを作成
しようとして困った現象に遭遇しています。
現象は、このアプリケーションを起動し、そのままプロパティページの
切換えを行っている分には、何も問題なく動作しています。
ところが、一度、他に(他のアプリケーションや、ウインドウの外に)
フォーカスを移したり、ダイアログを最小化するとダイアログアプリケーションが[応答
なし]になってしまいます。
何かプログラム上に大きな問題があるのでしょうか。
ただ、このプログラムをFormViewのSDIで作成するとこのような問題は
発生しません。
プロパティシートの代わりにタブコントロールを使っても大丈夫です。
何卒ご指導の程、よろしくお願いします。
環境は VC 2003,2005のいずれでも発生しています。
http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200707/07070045.txt
おんなじ質問あちこちにバラ撒いても効果ありませんから。
つか、その前に「使用上の注意」を読んだのか? と。
>おんなじ質問あちこちにバラ撒いても効果ありませんから。
全く逆でしょう。誰だって困ったことがあれば1秒でも早く解決したいと思いますよね?
ダイアログベースのプロパティシートの問題(仕様?)は私が知る限りでは10年くらい
前から存在します。つまりVC5.0 or 6.0の時代からです。その辺りから調べてみてはい
かがですか?私も調べてみます。
約10年前のvcppMLに良く似た質問が投げられていたので参考にしてはどうでしょう。
http://www.hey-to.net/ML-archive/vcppML/1998/msg06495.html
キャッチンさんの言われているような問題であればググれば一発
1秒かかりません
http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-
8&rlz=1T4GFRC_jaJP204JP205&q=%e3%83%97%e3%83%ad%e3%83%91%e3%83%86%e3%82%a3%e3%
82%b7%e3%83%bc%e3%83%88+%e3%83%95%e3%83%aa%e3%83%bc%e3%82%ba
επιστημηさんは「使用上の注意」を読んでいないのを問題にしているのでは?
誰だって困ったことがあれば1秒でも早く解決したいと思うだろうけど
それだと誰でもマルチしていいよって意味になってしまうよ。
複数の掲示板に描くことが必ずしもいけないこととは思わないけど
嫌われているマルチをするってことは
説明を読んでいないなどが考えられます。
全ての人が悪いというわけではありませんが可能性として、
過去ログ読まない、
googleの代わりに使う、
説明読まない、
自分さえ得すれば構わない、
掲示板が助け合いで成り立っているとか考えていない、
などなど
マルチする人って俺も1秒でも早く解決したいと
思っているのかなって思うけど
同時に複数の掲示板に同じ文章を書いて
そのまま放置する可能性が高いんですよ。
たとえ可能性が低くてもなんどもそんな目に会う人から見れば
マルチが嫌われるのに十分です。
どっちかというと回答者がこき使われているようです。
複数の掲示板に書いてしばらく放置しておけば
ベストな回答が楽して得られるだろうくらいに思っていると感じます。
実際、ここが放置じゃないですか。
同時に複数の掲示板に回答が多数合ったら
1人でこなせないから放置されるし。
というか十分回答できるはずでも放置することありますよ。
まして自己解決したらこのまま放置ってこともあります。
ここを含めると3箇所に見ました。
確かにいろんなとこに質問投げさせて頂いております。しかし、例え自己解決できたと
しても放置などするつもりはまったくありませんし、過去にしたこともございません。
何分、切羽詰まった状況でしたのでご了承願いますでしょうか。申し訳ございません。
キャッチンさん、jienさん 情報提供誠にありがとうございます。10年前からの既知
の問題のようですので調べてみます。
すいません。解決しました!
プロパティシートのOnInitDialog()で
ModifyStyleEx(0, WS_EX_CONTROLPARENT);
回答頂いた方々に厚く御礼申し上げます。
ありがとうございました。
> 何分、切羽詰まった状況でしたのでご了承願いますでしょうか。
「使用上の注意」を読んだのか? と。
「…おしっこ漏れそうです。
切羽詰まった状況なので信号無視して突っ走ってよろしいでしょうか?」
許してくれるおまわりさんはいませんよ。
>プロパティシートのOnInitDialog()で
> ModifyStyleEx(0, WS_EX_CONTROLPARENT);
ですか。
拙者はそーゆーものだと思い、イベントハンドラ内でいろいろ(メインダイアログに
フォーカスするなど)やってました。
当然モーダルでも使えるんですよね?
早速試してみます(^^);
文体が同じなのだが...
お前ら、そうイライラ、すんなよ。
俺みたいに広い心を持て。
マルチだっていいじゃないか。
誰に迷惑かけるわけじゃあるまいし。
了見がせまいのお前らは。
俺様の広い心に適えば、コミュニティに受け入れられているル
ールなど無視してかまわないと。マルチポストを嫌悪する利用
者の考えは、俺様の広い心を持ってしても看過できないと。
それって単に自己中心的なだけでは。
偽者君 乙
それぐらいで嫌悪すんなよ。
いろんなところで答えてもらえれば、
それだけみんなに目が行き届いて
他の利用者の勉強になる。
色々なところで聞けば、いろんなコーディングの案が
見れて知識が増える。
とりあえず了見が狭い。狭い。
だから俺はマルチ報告をありがたいと思っている。
別の掲示板で解決した場合
そのまま放置か単に解決したという報告程度で
デバッグ技術とか予備知識とか解決に至るまでの話が見られない。
マルチ報告あっての『他の利用者の勉強になる』だとおもう。
でなければ単なる自己中の質問者が得するばかりの
『いろんなコーディングの案が見れて知識が増える』となる。