OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

2秒間のメッセージウィンドウ

  • 暇なときにでも
  • 質問No.3329
  • 閲覧数723
  • ありがとう数8
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 76% (155/202)

よろしくおねがいします。
SDKで、メッセージボックスを2秒間ほど表示の後、自動的に消去し、
次の処理に移りたいのですが、MessageBox とかで実現しようとすると、
自分で、OKボタンやら、キャンセルやらを押さなくてはなりません。
どのようにすると可能でしょうか。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.3
レベル5

ベストアンサー率 66% (2/3)

アスキー出版局から 「ワンポイント・レッスン 最新Winodowsプログラミングテクニック」 という本が出ています。 MSJの記事をまとめたもので、9000円もする電話帳よりも分厚い本ですが、 その中に 「メッセージボックスに応答が無い場合、自動的に閉じてスレッドの実行を継続させるには」 というそのもののQ&Aがあります。 要約するとタイマーコールバック関数を用意しておいて(SetTim ...続きを読む
アスキー出版局から
「ワンポイント・レッスン 最新Winodowsプログラミングテクニック」
という本が出ています。
MSJの記事をまとめたもので、9000円もする電話帳よりも分厚い本ですが、
その中に
「メッセージボックスに応答が無い場合、自動的に閉じてスレッドの実行を継続させるには」
というそのもののQ&Aがあります。

要約するとタイマーコールバック関数を用意しておいて(SetTimer)
それからメッセージボックスを出します(MessageBox)。
コールバックの処理(タイムアウト時に実行される)はメッセージボックスに対して
EndDialogするだけです。
ここでどうやってメッセージボックスのHWNDを取得するのかと言うと
この本ではGetActiveWindowを使ってます。
これが気持ち悪いようでしたら(私はあまり気持ちよくないです)、
EnumWindowsで列挙してタイトル文字列で探すとかしてください。

タイムアウトするメッセージボックスについてのアイデアはあちこちで見られる
ようですが、大きく分けると
1.別スレッドでメッセージボックスを出す
2.メッセージボックスのリソースとメッセージハンドラを自前で用意する
の2つのように思われます。私の知識不足かも知れませんが。
そんな中で若干気持ち悪いですが(私だけ?)これが一番シンプルです。
  • 回答No.1

 メッセージボックスと同じフォームを自分で組み、そこにタイマーオブジェクトを仕込むのが一番だと思います。 ...続きを読む
 メッセージボックスと同じフォームを自分で組み、そこにタイマーオブジェクトを仕込むのが一番だと思います。
補足コメント
naru

お礼率 76% (155/202)

さっそくの回答ありがとうございます。
つまり、リソースエディターでダイアログをつくる、という解釈でよろしい
のでしょうか?
やはり、それしかないのですね・・・

VCの『 あの 』余計なコードを発生させたくないので、あえてSDKで
取り組んでいる次第ですが、もっと手軽な方法をご存知の方がいましたら、
ぜひともお教え願いたいです。
投稿日時 - 0000-00-00 00:00:00
  • 回答No.2
レベル13

ベストアンサー率 46% (643/1383)

メッセージボックスをサブクラス化して、ショートカットキーを送信するとか… このあたりについての知識はあまり持ち合わせていないので、詳しいことは書けませんが… ...続きを読む
メッセージボックスをサブクラス化して、ショートカットキーを送信するとか…
このあたりについての知識はあまり持ち合わせていないので、詳しいことは書けませんが…
補足コメント
naru

お礼率 76% (155/202)

少なからず私にとっては貴重な情報です。
ありがとうございました。
投稿日時 - 0000-00-00 00:00:00
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ