VC6.0の勉強を始めた超初心者です。
いきなり質問ですが、タイマー(OnTimer)内で
変数(スタティック変数・メンバ変数ともに)の値を変更しても
なぜか初期化された状態で繰り返されます。
static int testwork=0;
void XXX::OnTimer(UINT nIDEvent) {
if (!(testwork)) {
メッセージ文
}
testwork = 1;
}
これだと一回だけメッセージ文が表示されそうなものなんですが、
毎回表示されてしまいます・・
void XXX::OnTimer(UINT nIDEvent) {
static int testwork=0; // 関数の中に書きましょう
if (!(testwork)) {
testwork = 1; // メッセージボックスを表示する前に書きましょう
メッセージ文
}
}
恐らくメッセージボックスを使ってメッセージを表示してると思いますが
メッセージボックスを表示してる間にもどんどんタイマイベントは発生しているのですよ
スミマセン。確かにそのようです。
違う方法で確認したら問題ありませんでした。
Cのprint文のような感じで気軽に使っていたのが悪かったのですね。
ありがとうございました。
ツイート | ![]() |