[Framework] 1. μ¬μ©μ μ§μ /μ μ λ©μΈμ§(Message) μ¬μ©νκΈ°, λ©μμ§ λ§΅(MFC)π¨π»π» programming/β½ Framework2024. 1. 16. 16:57
Table of Contents
728x90
μΌνλ€ "#define ID_MYMESSAGE WM_USER+1" μ΄λ° μμΌλ‘ μ μ λ λνμΈμ λ³΄κ³ WM_USERκ° λ¬΄μμ΄λ©°.. μ΄λ»κ² μ¬μ©νλμ§ κΆκΈν΄μ μ 리ν΄λ³Έλ€..μμ κ°μ μ μλ μ¬μ©μ μ§μ /μ μ λ©μΈμ§λ₯Ό μ¬μ©νκΈ° μν messageIDλ₯Ό λΆμ¬νλ μ½λ μμΌλ©° λ©μμ§ λ§΅μ λ§λλ κ³Όμ μ μλμ κ°λ€.
1. μ¬μ©μ μ μ ν¨μλ₯Ό λ§λ λ€. (λ©μμ§ νΈλ€λ¬λ₯Ό μ μνλ€.)
μ¬μ©μ μ μ ν¨μλ μ ν΄μ§ ν¨μν(μν)μ΄ μλ€. μλμ κ°κ² ν¨μνμ μ§μΌμ μ μ ν΄μΌνλ€.
afx_msg LRESULT MyPinkoFunc(WPARAM wParam, LPARAM lParam)
{
return (0);
}
2. ON_MESSAGE
ON_MESSAGE( message, memberFxn )
- message : λ©μμ§ ID
- memberFxn : λ©μμ§κ° 맀νλλ λ©μμ§ μ²λ¦¬ ν¨μμ μ΄λ¦
β» λ©μμ§ID : WM_USERκ°μ μ¬μ©ν΄μΌνλ€.
<WinUser.h>
/* Private Window Messages Start Here : */
#define WM_USER 0x4000 == (int)1024
0~WM_USER –1 | μμ€ν μμ μ¬μ©νλλ‘ μμ½λ λ©μμ§μ λλ€. |
0x7FFF ν΅ν΄ WM_USER | νλΌμ΄λΉ μ°½ ν΄λμ€μμ μ¬μ©ν μ μ λ©μμ§μ λλ€. |
0xBFFF ν΅ν΄ WM_APP | μ ν리μΌμ΄μ μμ μ¬μ©ν μ μλ λ©μμ§μ λλ€. |
0xFFFF ν΅ν΄ 0xC000 | μ ν리μΌμ΄μ μμ μ¬μ©ν λ¬Έμμ΄ λ©μμ§μ λλ€. |
0xFFFF μ΄κ³Ό | μμ€ν μμ μμ½ν©λλ€. |
3. SendMessage, PostMessage APIμ λ©μμ§λ₯Ό 보λΈλ€.
LRESULT SendMessage(
_In_opt_ HWND hWnd,
_In_ UINT Msg,
_In_ WPARAM wParam,
_In_ LPARAM lParam
);
BOOL PostMessage(
_In_opt_ HWND hWnd,
_In_ UINT Msg,
_In_ WPARAM wParam,
_In_ LPARAM lParam
);
β» PostMessageμ SendMessageμ μ°¨μ΄
SendMessage | PostMessage | |
리ν΄κ° | LRESULT | BOOL |
λμ | μλμ° νλ‘μμ λ‘ λ³΄λ΄ μ¦κ° μ²λ¦¬νλλ‘ν¨. | hWndμλμ° λ©μμ§ νμ μ§μ΄ λ£κ³ λ°λ‘ 리ν΄ν¨. |
νμ© | - κΈνκ² μ²λ¦¬ν νμ μλ λ©μμ§λ₯Ό μ²λ¦¬ - μμκ° μλ μμ μ²λ¦¬ |
728x90
@DoctorSunAhna :: νν¬μ½λ₯
μ νλ κ² λ³΄λ€ λ«κ² μ§
ν¬μ€ν μ΄ μ’μλ€λ©΄ "μ’μμβ€οΈ" λλ "ꡬλ ππ»" ν΄μ£ΌμΈμ!