- ベストアンサー
モーダル画面の親をクリック時にタイトルバーが点滅
環境:Win2000/VC6/MFC ある画面(親画面)から別の画面(子画面)を モーダルで表示します。 子画面が表示した状態で、親画面をクリックした時、 子画面のタイトルバーが青色(アクティブ)と 灰色(非アクティブ)を数回繰り返し、点滅します。 点滅後は、青色(アクティブ)に戻ります。 この時、灰色にならないようにする方法を教えて下さい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- taka_tetsu
- ベストアンサー率65% (1020/1553)
回答No.3
- taka_tetsu
- ベストアンサー率65% (1020/1553)
回答No.2
- taka_tetsu
- ベストアンサー率65% (1020/1553)
回答No.1
補足
自己レスです。 以下の方法で、ほぼ、点滅は、なくなりました。 子画面で、WM_NCACTIVATEメッセージ受信時の処理を 追加し、アクティブでなくなった時に、 アクティブに変更するよう、以下の対応を行いました。 ・子画面のClassWizardには、WM_NCACTIVATEメッセージは存在しないため、 手動で、OnNcActivate関数を追加しました。 参考:http://www5d.biglobe.ne.jp/~satis/document/MFC100/008.html ・子画面のOnNcActivate内にて、 アクティブでなくなった時に、自分自身へ PostMessage( WM_NCACTIVATE, TRUE, 0 ); を送信しました。(以下、参照) > BOOL C子画面Dlog::OnNcActivate(BOOL bActive) > { > if ( !bActive ) { > PostMessage( WM_NCACTIVATE, TRUE, 0 ); > } > > return CDialog::OnNcActivate(bActive); > } 早いマシンだと、ちらつきが発生しますが、 グレーの表示が見えるほどには、なりません。 上記、対応で解決しました(?) ありがとう、ございます。