投稿日 | : 2004/05/20(Thu) 13:34 |
投稿者 | : フレ |
Eメール | : |
URL | : |
タイトル | : Re^2: イベント処理中に違うイベントの処理を行う方法 |
こんにちはフレです。
徳田 新之助 さん、Say さんお返事ありがとうございます。
また、回答が遅くなってすみませんでした。
私の拙い文章だけだと質問の意味が
うまく伝わらないかな〜っと思って
既存のソースから簡単なサンプルを
提示したつもりだったのですが
Say さんからもご指摘のあったように
「dateTime <= Now」の条件が誤っていたりだとか
余計にわかりにくくしていたようです。
申し訳ございません。
「dateTime <= Now」ではなく「dateTime > Now」が正しいです。
> タイマーイベントは約65秒が最長なので、永久にループすると思うのですが
> Timer1.Interval と Timer1.Enabled 等の設定はどこで
> どのようにしておられますか?
>
実際のアプリケーションの実装では
Timer1.Interval は、10000(10秒)を設定しております。
Timer1.Enabled は、デザイン時に False を設定しており、
アプリケーションの初期化処理が完了した時点で
True を設定するようにしております。
また、タイマーイベント内のループ処理も
最初にサンプル提示した300秒ではなく
実際のアプリケーションでは無限ループで実装しています。
(他のイベントの処理が終わるまでループし続ける同期処理のイメージ)
タイマーイベントは約65秒が最長とありますが、
もしかしてタイマーイベントの
イベントハンドラ関数(Timer1_Timer())の処理は
65秒以内に終了しないとまずかったりするのでしょうか?
やはり以下のようなシーケンスで処理をするのは
VBでは無理なんですかね〜。
※VBでは同期処理のようなことは
普通しないものなのでしょうか?
以下の4項の処理をどうにか実現したいのですが...
1.タイマーイベント発生
↓
2.ボタンクリックイベント発生
↓
3.タイマーイベント処理内でDoEventsを実行した契機で
ボタンクリックイベントに制御が移る
↓
4.ボタンクリックイベント処理内でタイマーイベントの処理に制御を戻したい。
以上です。
よろしくお願いします。