- PR -

CDateTimeCtrl の暴走について

1
投稿者投稿内容
JJ
ベテラン
会議室デビュー日: 2003/02/25
投稿数: 61
投稿日時: 2005-08-02 10:58
開発環境
VC++6.0
WindowsXP Home

CDateTimeCtrl(日時指定プロパティ)を使用していますが、
日付を変更した場合はメッセージを表示して、ある処理を行おうと思っています。

ドロップダウンで月のカレンダーを表示させ、
前月または次月などを行います。(何度か同じ処理を繰り返す)
日付が変更されるため、メッセージが表示されます。
「OKボタン」クリック後に日付が暴走します
(自動的に次月→次月→次月・・・・と繰り返されます。)

これはバグでしょうか?
また、回避策はありますでしょうか?

下記はサンプルプログラムです
void クラス:nDatetimechangeXX(NMHDR* pNMHDR, LRESULT* pResult)
{
 AfxMessageBox( "メッセージ", MB_ICONEXCLAMATION );
}

以上、ご教授よろしくお願いします
JJ
ベテラン
会議室デビュー日: 2003/02/25
投稿数: 61
投稿日時: 2005-08-02 15:52
自己レスです

メッセージ表示をPost処理する方法で解決しました。

なぜかChangeイベントが複数発生する場合があるので
1回目だけ処理してフラグを立てる。
フラグはPost処理でクリアする方法で制御しました。
1

スキルアップ/キャリアアップ(JOB@IT)