私のアプリケーションはC++で、MFCとATLの組み合わせです。 私がここで作業している部分はMFCです。カスタムListCtrlからWM_NOTIFYメッセージを取得する
CListCtrlから継承するダイアログボックスの1つにカスタムリストコントロールクラスがあります。
LVN_ITEMCHANGEDメッセージのハンドラを追加しようとしているので、リストの内容に依存するダイアログフォームの残りの部分を更新できます。 具体的には、各リスト項目にチェックボックスフィールドがあり、変更されたときを検出する必要があります。
問題は、私のリストがメッセージを送信していないことです。
私のメッセージマップです、それは私が単にメッセージを変更することにより、LVN _ ITEMCHANGING、NM_CLICK、およびNM _ RELEASEDCAPTUREのような他のメッセージを検出しましたが、うまく動作しますON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST_OUTPUT_CMDS, OnLvnItemchangedListOutputCmds)
。
したがって、listctrlカスタムクラスが何らかの形でメッセージを適切に投稿していないと思います。
この質問
は多くの方法に答えすることができます。1. 私はそれが親(ダイアログ)だと子リストからLVN_ITEMCHANGEDメッセージを投稿することができますどのように?
2. 私は正しいメッセージをキャッチしていますか?試行したほとんどのものが更新を早く開始しました(つまり、リスト内のデータが更新される前)です。これを行うと、リストは以前の状態に基づいて更新されます。
3. 私はそうしてはならないことが他にありますか?私はこれをオープンにしておくようにと頼んでいます。
http://stackoverflow.com/questions/1272398/how-to-send-a-notification-thats-handled-by-onnotifyに移動しました – CodeFusionMobile