• ベストアンサー

モーダル画面の親をクリック時にタイトルバーが点滅

taka_tetsuの回答

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.3

どうも、内部的にはFlashWindowExが呼び出されてる感じですね。 このときにも0x0118がきてますし。 なんで、このメッセージをどうにかして対処するというのは無理そうですね。 プログラム的に何とかするには、モーダルウィンドウが 表示されている間にロックされているウィンドウが クリックされたら、そのマウスメッセージを破棄する しかなさげですねぇ。 FlashWindowExをコールさせないようにということで。

ryo_oji
質問者

補足

自己レスです。 以下の方法で、ほぼ、点滅は、なくなりました。 子画面で、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); > } 早いマシンだと、ちらつきが発生しますが、 グレーの表示が見えるほどには、なりません。 上記、対応で解決しました(?) ありがとう、ございます。

関連するQ&A

  • タイトルバーしか表示されない

    IE5.5なんですが先日から急におかしくなりました。 OSはWindows98SEです。 最初にブラウザを立ち上げた時は以前と同じように普通のサイズで表示されるのですが、そこからリンクで飛んで違う画面が開く時にタイトルバーのみ、しかも横5センチくらいのサイズでしか開きません。最大化ボタンを押すと全表示になるのですが、不便です。 例えばOKWebの回答を見ていて参考USLをクリックすると新たな画面が開きますがその時、青色のタイトルバーだけが画面に出てきて「教えて!・・・_□×」(長さにして5センチ)としか表示されないのです。 要するにタイトルと最小化、最大化、閉じるボタンのみが表示されます。 クリックしても同じ画面で新たなページに切り替わる時は大丈夫です。 原因と対処方法をご存知の方教えて下さい。

  • Word2000を開いてツールをクリックした時の点滅について

    OSはwindowsXP ソフトはWord2000 ver.(9.0.)を使っているものです。 wordで文章を作成し保存。 その後、またその文章を開く。 カーソルをどこにも置かない(文章編集画面をクリックしない)状態で 「挿入」→「ブックマーク」をクリック。 以上の動作をするとwordのタイトルバーがアクティブ/非アクティブ状態を繰り返し点滅する。 また、ツールバーにあるwordのバーもオレンジ色と非アクティブ状態を繰り返し点滅する。 このようなことが起こりブックマークの画面(というのでしょうか?)が出てきません。 表示を最小化しその後最大化にするとブックマークの画面が表示され点滅もしなくなっています。 またブックマークだけでなくほかの動作(文章校正など)でも同様のことが起こります。 カーソルを文章編集画面に一度置き同じ動作をすると、このようなことは起こりません。 これは、そのような仕様なんでしょうか。それとも不具合なんでしょうか。特に文章編集に問題はありませんので、このままでもかまいませんが、解決方法を知っている方がいらしたら教えて下さい。

  • タイトルバーに画像を貼り付ける。&閉じるボタンを左側に移動できるか?

    VC++で作っています。 タイトルバーのデザインをいろいろ変更したいと思っています。 具体的にいうと、 タイトルバーの背景(青色の部分)に画像を貼り付けたりできるのでしょうか? 縮小ボタンとか閉じるボタンをマックみたいに左側に移動できるでしょうか? アイコンを非表示にすることができるでしょうか? などです。 もし無理な場合は、WM_PAINTなどでタイトルバーらしき絵を描画して、ある座標をクリックしたら、”閉じるボタン”などと同じような動作をするように作ろうかなと思っているのですが、これは非効率的でしょうか? どんなことでもいいので、どなたかよろしくおねがいします。

  • WindowsXPシャットダウン時のタイトルバーの色の違い

    WindowsXP(使用中のものはProです)のシャットダウンを行うときに「お待ちください」と表示されるウィンドウ のタイトルバーの色が通常「青色」で表示されるのですが、ときには「黒色」になることがあります。 「Windowsをシャットダウンしています」の時のタイトルバー(お待ちくださいの部分)が 黒く表示されることがあります。 ちなみに画面のプロパティでテーマを変えているからではありません。 また、シャットダウン方法はスタートボタンからシャットダウンを行っています。 これはどのようなときでしょうか?

  • OnTimer()時にクリックされたことを知るには?

    環境 WIN98 VC++6.0 MFC にて OnTimer()時にクリックされたことを知るにはどうすれば良いですか? void CAbcdView::OnTimer(UINT nIDEvent) { KillTimer( 1 ); if ( どのように記述すれば良いですか?) //左クリックされたことを知りたい MessageBox( "クリックされました。", "左", MB_OK ); CView::OnTimer(nIDEvent); }

  • ワードのタイトルバーが点滅して

    WIN98、オフィス2000でワードを使おうとして、メニューバーから作業をしようとすると、タイトルバーが点滅してなにもできなくなります。 結局強制終了しています。 ワードの起動時にウィルス検索をしろと、下の方に出たのに気づき、 ノートンアンチウィルスでウィルススキャンしましたが、感染していないとの事(まだ検索しろと出る) オフィス2000を削除、再インストールしてもかわらず、修復というやつもだめで、 メンテナンスウィザードも2回かけました。 ディスクの空き容量が足らないのかとかと、起動時90%まであけたのですがだめです。 利用環境の情報は足りていますでしょうか? 1年半ぐらいの初心者ですが、お手上げです。 お知恵を拝借ください。

  • Wordで入力画面が出てこない

    既にあるワード文書を別名で保存しようとしたり、パスワード管理をしている文書を開こうとすると、「ファイル名をつけて保存」や「パスワード」の入力画面がワード(本体)の画面の裏に立ち上がっているのか、最前面にその画面が出てきません。 ワードの画面は「タイトルバー」が青色と灰色の点滅を繰り返し、何をしても動きません。結局「タスクバー」にあるその文書名をクリックすると、一度ワードが画面から消え、もう一度クリックすると、先ほどまで裏に隠れていた「ファイル名をつけて保存」や「パスワード」の入力画面が現れ、その後は普通に使えます。 使用することはできるので問題はないのですが、何せ手間がかかるし困っています。何か元に戻す方法はないでしょうか?回答、ちなみにWord2000を使っています。よろしくお願いします。

  • タイトルバーの左に小さなアイコンを表示したい

    素人質問ですみません。 VC++6.0、MFCで作業しています。 ダイアログウィンドウのタイトルバーに表示する小さなアイコンを表示する方法がわかりません。 ダイアログプロパティのどこかで設定できるのでしょうか? 探してみましたがよく分かりませんでした。 簡単そうな質問ですみませんが、宜しくお願いします。

  • タイトルバーと同機能のスタティックコントロール

    VC6.0 MFC ダイアログで常駐アプリを作っているものです。 タイトルバーを非表示にし、タイトルバーに似せたビットマップを 作成し、スタティックコントロールに貼り付けています。 そこで、このビットマップにタイトルバーと同様の機能をもたせたいのですが、 タイトルバー上をドラッグ&ドロップでウィンドウを移動させる方法が どうしてもわかりません。 ウィンドウを移動させる方法はわかっているのですが、 スタティックコントロールに機能を実装する事ができません。 どなたかご教授ください。よろしくお願い致します。   

  • タイトルバーしか出ません。

    今まで、インターネットを利用するとき HPから必要な箇所に移動すると 移動先の新しい画面がすぐに出また。 ところが最近 何が原因かはわかりませんが(最近 ノートン・インタネットセキュリティ2004インストールしました。) 移動先の画面が出る前に タイトルバーだけしか小さく出ません。 そのタイトルバーの最大化ボタンを押してはじめて 移動先の画面が見られます。 以前のようにすぐ移動先の画面を、手早く表示させる方法を教えてください。 私が試した方法 ・タイトルバーをドラッグして大きくし最後に閉じて再起動しました。 ・タイトルバーが小さい時に右クリック→サイズ変更→サイズを矢印キーで大きくしてenterを押しページを閉じてもう一度開いてみました。 ・Supybotもインストールしてやってみました。 以上 試しましたがダメです。 良い方法教えて下さい。