
No.2ベストアンサー
- 回答日時:
アプリ内で時間待ちループすることはGUIアプリが一番やってはいけない事です。
なので、SetTimerで一定周期でWM_TIMERメッセージを発生させるのが一般的です。WM_TIMERのイベントハンドラを追加すれば時間経過時の処理が書けます。
SetTimerでは一定周期でイベントが発生するので、回数を数えることで時間経過を知ることが出来ます。例えば、SetTimerで1秒おきにした場合は、3600回で1時間になりますよね。2時間後なら、その倍です。
この回答への補足
ありがとうございます。
WM_TIMERイベントで補足できました。
今回は、経過時間でイベントを発生させましたが、特定の時間にイベントを発生する(例えば、午後1時にBEEP音を鳴らす。午後5時30分に、このアプリケーションが自動的に終了する)ことは可能でしょうか。
何時・何分で動作させたいです。
No.4
- 回答日時:
UINT_PTRの配列化は考えられていないみたいですね。
どちらにしろ、同じウィンドウ内でタイマーイベントを2つ発生させるのは仕組み的に出来ないので、1つのタイマーイベントで2つの処理を同時に行ってください。
この回答への補足
>同じウィンドウ内でタイマーイベントを2つ発生させるのは仕組み的に出来ないので・・・
2つ動いていますが・・・
片方は3秒ごとカウントした数字が表示され、
もう一つは5秒毎にBeep音が鳴っています。
void CTimerTestDlg::OnTimer(UINT_PTR nIDEvent)
{
switch (nIDEvent){
case 1:
case 2:
...
No.3
- 回答日時:
>何時・何分で動作させたいです。
そういったのは用意されていないので、SetTimerで1秒毎に監視イベントを起こしてWindows自身の時計を監視するのが良いと思います。
GetLocalTime()関数を使います。
http://www.dev.pei.jp/programming/sdk/sdk52.html
この取得値と予定していた時刻が一致したら、更に処理を呼び出せば良いことですから。
この回答への補足
ありがとうございます。
新しいタイマーを作成して、1秒毎にGetLocalTime()で時間を調べることに・・・といきなり解決できないエラーが出まして、
UINT_PTR m_nTimer;
の時は問題なかったのですが、
新しいタイマーを作成するために
UINT_PTR m_nTimer[2];
とすると、
error C2040: 'm_nTimer' : 'UINT_PTR [2]' は 'UINT_PTR' と間接操作のレベルが異なります。
WM_DESTORYイベントが発生した時に、KillTimerする時の引数なのですが、
UINT_PTRは配列に定義できないのでしょうか?
No.1
- 回答日時:
この回答への補足
ありがとうございます。
WM_TIMERイベントで補足できました。
時間をはかるようなものは、SetTimer以外はなくて、基本的にこれを使ってプログラムするということですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) excelvbaのenableeventsについて 3 2022/08/30 11:20
- その他(プログラミング・Web制作) google formsを使ったタスク依頼フォーム作成におけるご相談 1 2023/06/22 15:55
- 会社・職場 転職について 7 2023/03/07 06:29
- デスクトップパソコン 通話が遅延します 1 2023/06/18 02:36
- Java Javaの問題なのですが、 永久ループを使って以下に従って数値を出力するプログラムを作成する。 ・1 3 2023/06/06 18:43
- 事務・総務 2つの事務ならどちらに応募しますか? ①社団法人の事務 175000の給与、ボーナス4.5、昇給あり 4 2023/03/16 12:26
- 妊活 初期流産なのでしょうか 1 2023/03/14 16:08
- BTOパソコン 数時間使用しない状態からPCを起動に失敗後、 自動修復画面で再起動をすると正常に動き出す 3 2022/09/26 22:01
- 妊活 チェックワンファスト 生理予定日1日前のフライング検査 これは蒸発線? 8 2023/04/19 12:23
- その他(学校・勉強) 質問のマルチポストの是非を問う数理的問題 1 2023/02/13 13:43
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBSの処理中一旦処理を止めて再...
-
フォルダ指定
-
VBSで応答不要のメッセージボッ...
-
手動かプログラムでの起動かの判断
-
ASP.NETでのメッセージ画面を出...
-
VBA kernel32 の意味
-
ACCESS側からEXCELの書式を設定...
-
ループを使わずに、特定時間に...
-
マウスのクリックを無視したい
-
beforecloseの中からの抜け出し方
-
【C#】 あるイベントから別イ...
-
Macターミナルで実行中のプログ...
-
C# シリアル通信でデータ受信...
-
MACアドレスの調べ方
-
VBAの配列サイズとメモリに関して
-
SendMessageが失敗するときがある
-
シリアル通信エラー
-
MFCスレッド CriticalSection
-
PDFからTIFFに変換できるフリー...
-
vba listviewにおけるtextのAli...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBSの処理中一旦処理を止めて再...
-
ACCESS側からEXCELの書式を設定...
-
メッセージボックスのボタン名変更
-
VBSで応答不要のメッセージボッ...
-
VBA kernel32 の意味
-
Excel VBA で処理中断(DoEvents...
-
VBA、UserFormを前面に出力して...
-
Application.ScreenUpdating=Fa...
-
MFCのワーカースレッドとUIスレ...
-
ASP.NETでのメッセージ画面を出...
-
「キャンセル」ボタン付きの処...
-
シャットダウン時のExcel強制終...
-
【C#】 あるイベントから別イ...
-
ボタンが押された事を検知する...
-
PostMessageの連続送信
-
VBA メッセージボックスを自動...
-
エクセルVBAでクリップボード内...
-
VCでウエイトをミリ秒でかけ...
-
ループを使わずに、特定時間に...
-
VB6 コマンドボタン クリック...
おすすめ情報