|
아래의 Win32 Developer's References 설명을 보면 EN_CHANGE 메시지는 부모 윈도우가 받게 되어 있고
WM_COMMAND 메시지의 추가 정보에 해당 컨트롤의 정보가 따라오게 되어 있네요.
그리고, 빌더에서 오브잭트 인스팩터를 사용할 때는 그냥 OnChange 이밴트 핸들러 작성하시면 그 이밴트가 발생됐을 때 할 작업을 코딩할 수 있습니다.
The EN_CHANGE notification message is sent when the user has taken an action
that may have altered text in an edit control.
Unlike the EN_UPDATE notification message, this notification message is
sent after Windows updates the screen.
The parent window of the edit control receives this notification message
through the WM_COMMAND message.
EN_CHANGE
idEditCtrl = (int) LOWORD(wParam); // identifier of edit control
hwndEditCtrl = (HWND) lParam; // handle of edit control
The WM_COMMAND message is sent when the user selects a command item from a menu
, when a control sends a notification message to its parent window
, or when an accelerator keystroke is translated.
WM_COMMAND
wNotifyCode = HIWORD(wParam); // notification code
wID = LOWORD(wParam); // item, control, or accelerator identifier
hwndCtl = (HWND) lParam; // handle of control
김갑철 님이 쓰신 글 :
: 에디터 안의 내용이 바뀌었을때,
: EN_CHANGE, EN_UPDATE 등은 발생하지 않더군요.
:
: RichEidt 의 내용이 바뀌었을때 발생되는 정확안 메세지를 알고 싶습니다.
: 메시지 관련 책을 보고 있는데 위의 것 밖에는 보이지 않습니다.
:
: 이벤트를 사용하지 않고 직접 메세지를 처리하고자 하기 때문입니다.
:
: 김갑철.
|