일반 컨트롤 참조
이 섹션에는 특정 컨트롤뿐만 아니라 여러 컨트롤에 적용되는 프로그래밍 요소에 대한 참조 정보가 포함되어 있습니다. 대부분의 컨트롤이 지원하는 함수, 매크로, 메시지, 알림 및 구조체가 있습니다. 예를 들어, 대부분의 컨트롤은 NM_HOVER 알림을 사용하여 마우스 클릭을 처리합니다.
개요
항목 | 콘텐츠 |
---|---|
공용 컨트롤 정보 | 공용 컨트롤은 Windows 운영 체제에 포함된 DLL인 공용 컨트롤 라이브러리에 의해 구현되는 창 집합입니다. |
공용 컨트롤 FAQ | 이 FAQ는 공용 컨트롤에 대한 몇 가지 일반적인 질문에 대한 답변을 제공합니다. |
Functions
항목 | 콘텐츠 |
---|---|
DoReaderMode | 창에서 읽기 권한자 모드를 사용하도록 설정합니다. |
DPA_Clone | DPA(동적 포인터 배열)를 복제합니다. |
DPA_Create | DPA를 만듭니다. |
DPA_CreateEx | 지정된 크기 및 힙 위치를 사용하여 DPA를 만듭니다. |
DPA_DeleteAllPtrs | DPA에서 모든 항목을 제거하고 그에 따라 DPA를 축소합니다. |
DPA_DeletePtr | DPA에서 항목을 제거합니다. 제거된 항목을 수용하기 위해 필요한 경우 DPA가 축소됩니다. |
DPA_Destroy | DPA(동적 포인터 배열)를 해제합니다. |
DPA_DestroyCallback | DPA의 각 요소에서 pfnCB를 호출한 다음 DPA를 해제합니다. |
DPA_EnumCallback | DPA(동적 포인터 배열)를 반복하고 각 항목에서 pfnCB를 호출합니다. |
DPA_GetPtr | DPA에서 항목을 가져옵니다. |
DPA_GetPtrIndex | DPA에서 찾은 일치하는 항목의 인덱스를 가져옵니다. |
DPA_GetSize | DPA의 크기를 가져옵니다. |
DPA_Grow | DPA의 포인터 수를 변경합니다. |
DPA_InsertPtr | DPA의 지정된 위치에 새 항목을 삽입합니다. 필요한 경우 DPA는 새 항목을 수용하도록 확장됩니다. |
DPA_LoadStream | 지정된 콜백 함수를 호출하여 각 요소를 읽어 스트림에서 DPA를 로드합니다. |
DPA_Merge | 두 DPA의 콘텐츠를 결합합니다. |
DPA_SaveStream | 헤더를 작성한 다음 지정된 콜백 함수를 호출하여 각 요소를 작성하여 DPA를 스트림에 저장합니다. |
DPA_검색 | DPA에서 항목을 찾습니다. |
DPA_SetPtr | DPA의 항목에 값을 할당합니다. |
DPA_Sort | DPA(동적 포인터 배열)의 항목을 정렬합니다. |
DrawShadowText | 그림자가 있는 텍스트를 그립니다. |
DrawTextExPrivWrap | 지정된 사각형에 서식 있는 텍스트를 그립니다. 이 함수는 DrawTextEx에 대한 호출을 래핑합니다. |
DrawTextWrap | 지정된 사각형에 서식 있는 텍스트를 그립니다. 지정된 방법(탭 확장, 문자 정렬, 줄 바꿈 등)에 따라 텍스트 서식을 지정합니다. 이 함수는 DrawText에 대한 호출을 래핑합니다. |
DSA_Clone | DSA(동적 구조체 배열)를 복제합니다. |
DSA_Create | DSA를 만듭니다. |
DSA_DeleteAllItems | DSA에서 모든 항목을 삭제합니다. |
DSA_DeleteItem | DSA에서 항목을 삭제합니다. |
DSA_Destroy | DSA를 해제합니다. |
DSA_DestroyCallback | 각 항목에 지정된 콜백 함수를 호출하여 DSA를 반복합니다. 배열 끝에 도달하면 DSA가 해제됩니다. |
DSA_EnumCallback | DSA를 반복하고 각 항목에서 pfnCB를 호출합니다. |
DSA_GetItem | DSA에서 요소를 가져옵니다. |
DSA_GetItemPtr | DSA에서 요소에 대한 포인터를 가져옵니다. |
DSA_GetSize | DSA의 크기를 가져옵니다. |
DSA_InsertItem | DSA에 새 항목을 삽입합니다. 필요한 경우 DSA는 새 항목을 수용하도록 확장됩니다. |
DSA_SetItem | DSA에서 요소의 콘텐츠를 설정합니다. |
DSA_Sort | DSA의 항목을 정렬합니다. |
ExtTextOutWrap | 현재 선택한 글꼴, 배경색 및 텍스트 색을 사용하여 텍스트를 그립니다. 필요에 따라 클리핑, 불투명도 또는 둘 다에 사용할 차원을 제공할 수 있습니다. 이 함수는 ExtTextOut에 대한 호출을 래핑합니다. |
GetEffectiveClientRect | 지정된 모든 컨트롤을 포함하는 클라이언트 영역의 사각형 크기를 계산합니다. |
GetMUILanguage | 특정 프로세스에 대한 공용 컨트롤에서 현재 사용 중인 언어를 가져옵니다. |
GetTextExtentPoint32Wrap | 지정된 텍스트 문자열의 너비와 높이를 계산합니다. 이 함수는 GetTextExtentPoint에 대한 호출을 래핑합니다. |
InitCommonControls | 특정 공용 컨트롤 창 클래스를 등록하고 초기화합니다. 이 함수는 사용되지 않습니다. 새 애플리케이션은 InitCommonControlsEx 함수를 사용해야 합니다. |
InitCommonControlsEx | 공용 컨트롤 DLL에서 특정 공용 컨트롤 클래스를 등록합니다. |
InitMUILanguage | 애플리케이션이 시스템 언어와 다른 공용 컨트롤과 함께 사용할 언어를 지정할 수 있도록 합니다. |
LoadIconMetric | 클라이언트 지정 시스템 메트릭을 사용하여 지정된 아이콘 리소스를 로드합니다. |
LoadIconWithScaleDown | 아이콘을 로드합니다. 아이콘이 표준 크기가 아닌 경우 이 함수는 작은 이미지를 확대하는 대신 큰 이미지의 크기를 조정합니다. |
MirrorIcon | 아이콘이 미러링된 디바이스 컨텍스트에 올바르게 표시되도록 반전(미러링)합니다. |
PFNDACOMPARE |
DSA_Sort에서 사용하는 비교 함수의 프로토타입을 정의합니다. |
PFNDACOMPARECONST | 비교 중인 항목이 상수 개체일 때 DSA_Sort에서 사용하는 비교 함수의 프로토타입을 정의합니다. |
PFNDANUMCALLBACK | DSA 및 DPA 함수에서 사용하는 콜백 함수의 프로토타입을 정의합니다. |
PFNDAENUMCALLBACKCONST | 관련 항목이 상수 데이터에 대한 포인터일 때 DSA 및 DPA 함수에서 사용하는 콜백 함수의 프로토타입을 정의합니다. |
PFNDPACOMPARE |
DPA_Sort 및 DPA_Search에서 사용하는 비교 함수의 프로토타입을 정의합니다. |
PFNDPACOMPARECONST | 비교 중인 항목이 상수 개체일 때 DPA_Sort 또는 DPA_Search에서 사용하는 비교 함수의 프로토타입을 정의합니다. |
PFNDPAENUMCALLBACK |
DPA_EnumCallback에서 사용하는 콜백 함수의 프로토타입을 정의합니다. |
PFNDPAMERGE |
DPA_Merge에서 사용하는 병합 함수의 프로토타입을 정의합니다. |
PFNDPAMERGECONST | 상수 값을 사용하여 DPA_Merge에서 사용하는 병합 함수의 프로토타입을 정의합니다. |
PFNDPASTREAM |
DPA_LoadStream 및 DPA_SaveStream에서 사용하는 콜백 함수의 프로토타입을 정의합니다. |
PFNDSAENUMCALLBACK |
DSA_DestroyCallback에서 사용하는 콜백 함수의 프로토타입을 정의합니다. |
ReaderScroll | 활성 스크롤 영역으로 선언된 읽기 권한자 모드 창의 일부 내에서 마우스 포인터를 이동할 때 사용되는 애플리케이션 정의 콜백 함수입니다. |
ShowHideMenuCtl | 지정된 메뉴 항목의 확인 표시 특성을 설정하거나 제거하고 해당 컨트롤을 표시하거나 숨깁니다. 이 함수는 지정된 메뉴 항목에 확인 표시가 없는 경우 확인 표시를 추가한 다음 해당 컨트롤을 표시합니다. 메뉴 항목에 이미 확인 표시가 있는 경우 이 함수는 확인 표시를 제거하고 해당 컨트롤을 숨깁니다. |
Str_GetPtr | 한 버퍼에서 다른 버퍼로 문자열을 복사합니다. |
Str_SetPtrW |
ppszCurrent를 pszNew의 복사본으로 설정하고 필요한 경우 이전 값을 해제합니다. |
TranslateDispatch |
DoReaderMode 함수의 클라이언트에서 읽기 권한자 모드 창의 스크롤 영역을 대상으로 하는 모든 창 메시지를 가로채고 명시적으로 처리하는 데 사용됩니다. 이는 애플리케이션에서 정의한 콜백 함수입니다. |
매크로
항목 | 콘텐츠 |
---|---|
DPA_AppendPtr | DPA 끝에 새 항목을 삽입합니다. |
DPA_FastDeleteLastPtr | DPA에서 마지막 포인터를 삭제합니다. |
DPA_FastGetPtr | DPA에서 지정된 포인터의 값을 가져옵니다. |
DPA_GetPtrCount | DPA의 포인터 수를 가져옵니다. |
DPA_GetPtrPtr | DPA의 내부 포인터 배열에 대한 포인터를 가져옵니다. |
DPA_SetPtrCount | DPA의 포인터 수를 설정합니다. |
DPA_SortedInsertPtr | 지정된 기존 항목 앞이나 뒤에 새 항목을 삽입합니다. |
DSA_AppendItem | DSA 끝에 새 항목을 추가합니다. |
DSA_GetItemCount | DSA의 항목 수를 가져옵니다. |
FORWARD_WM_NOTIFY |
WM_NOTIFY 메시지를 보내거나 게시합니다. |
HANDLE_WM_NOTIFY |
WM_NOTIFY 메시지를 처리하는 함수를 호출합니다. |
INDEXTOSTATEIMAGEMASK | 트리 뷰 컨트롤 또는 목록 뷰 컨트롤이 인덱스를 사용하여 항목의 상태 이미지를 검색할 수 있도록 상태 이미지의 인덱스를 준비합니다. |
메시지
항목 | 콘텐츠 |
---|---|
CCM_DPISCALE |
트리 뷰 컨트롤, 목록 뷰 컨트롤, ComboBoxEx 컨트롤, 헤더 컨트롤, 단추, 도구 모음 컨트롤, 애니메이션 컨트롤 및 이미지 목록에서 자동으로 높은 DPI(인치당 도트 수) 조정을 사용합니다. |
CCM_GETUNICODEFORMAT | 컨트롤의 유니코드 문자 형식 플래그를 가져옵니다. |
CCM_GETVERSION | 가장 최근의 CCM_SETVERSION 메시지에 의해 설정된 컨트롤의 버전 번호를 가져옵니다. |
CCM_SETUNICODEFORMAT | 컨트롤의 유니코드 문자 형식 플래그를 설정합니다. 이 메시지를 통해 컨트롤을 다시 만들지 않고도 런타임에 컨트롤에서 사용하는 문자 집합을 변경할 수 있습니다. |
CCM_SETVERSION | 이 메시지는 특정 버전과 관련된 동작이 예상된다는 것을 컨트롤에 알리는 데 사용됩니다. |
CCM_SETWINDOWTHEME | 컨트롤의 시각적 스타일을 설정합니다. |
WM_NOTIFY | 이벤트가 발생했거나 컨트롤에 일부 정보가 필요한 경우 공용 컨트롤에서 부모 창으로 보냅니다. |
WM_NOTIFYFORMAT | 창이 WM_NOTIFY 알림 메시지에서 ANSI 또는 유니코드 구조체를 허용하는지 결정합니다.
WM_NOTIFYFORMAT 메시지는 공용 컨트롤에서 부모 창으로, 부모 창에서 공용 컨트롤로 전송됩니다. |
알림
항목 | 콘텐츠 |
---|---|
NM_CHAR |
NM_CHAR 알림 코드는 문자 키가 처리될 때 컨트롤에서 전송됩니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_CUSTOMDRAW | 사용자 지정 그리기 작업에 대해 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_CUSTOMTEXT | 사용자 지정 텍스트 작업에 대해 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_FONTCHANGED | 컨트롤이 글꼴을 변경했을 때 목록 뷰 컨트롤에서 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_GETCUSTOMSPLITRECT | 분할 단추를 구성하는 두 개의 사각형에 대한 측정값을 가져오기 위해 단추 컨트롤에서 부모에게 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_HOVER | 항목을 마우스로 가리키면 컨트롤에서 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_KEYDOWN | 컨트롤에 키보드 포커스가 있고 사용자가 키를 누를 때 컨트롤에서 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_KILLFOCUS | 컨트롤이 입력 포커스를 잃었음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_LDOWN | 마우스 왼쪽 단추를 눌렀음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_NCHITTEST | 컨트롤이 WM_NCHITTEST 메시지를 수신할 때 rebar 컨트롤에서 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_OUTOFMEMORY | 사용 가능한 메모리가 부족하여 컨트롤이 작업을 완료할 수 없음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_RDOWN | 현재 지원되지 않습니다. |
NM_RELEASEDCAPTURE | 컨트롤이 마우스 캡처를 해제하고 있음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_RETURN | 컨트롤에 입력 포커스가 있고 사용자가 Enter 키를 눌렀음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_SETCURSOR | 컨트롤이 NM_SETCURSOR 메시지에 대한 응답으로 커서를 설정하고 있음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_SETFOCUS | 컨트롤이 입력 포커스를 받았음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_THEMECHANGED | 테마가 변경되었음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_TOOLTIPSCREATED | 컨트롤이 도구 설명 컨트롤을 만들었음을 컨트롤의 부모 창에 알립니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
NM_TVSTATEIMAGECHANGING | 상태 이미지가 변경되는 트리 뷰 컨트롤에서 부모 창으로 보냅니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다. |
구조체
항목 | 콘텐츠 |
---|---|
COLORSCHEME | 도구 모음 또는 Rebar의 단추 그리기에 대한 정보를 포함합니다. |
DPASTREAMINFO |
PFNDPASTREAM 콜백 함수에서 사용하는 스트림 항목을 포함합니다. |
INITCOMMONCONTROLSEX | DLL(동적 연결 라이브러리)에서 공용 컨트롤 클래스를 로드하는 데 사용되는 정보를 전달합니다. 이 구조체는 InitCommonControlsEx 함수와 함께 사용됩니다. |
NMCHAR | 문자 알림 메시지에 사용되는 정보를 포함합니다. |
NMCUSTOMSPLITRECTINFO | 분할 단추의 두 사각형에 대한 정보를 포함합니다.
NM_GETCUSTOMSPLITRECT 알림과 함께 전송됩니다. |
NMCUSTOMTEXT | 사용자 지정 텍스트 알림에 사용되는 정보를 포함합니다. |
NMHDR | 알림 메시지에 대한 정보를 포함합니다. |
NMKEY | 주요 알림 메시지와 함께 사용되는 정보를 포함합니다. |
NMMOUSE | 마우스 알림 메시지에 사용되는 정보를 포함합니다. |
NMOBJECTNOTIFY |
TBN_GETOBJECT, TCN_GETOBJECT 및 PSN_GETOBJECT 알림 코드와 함께 사용되는 정보를 포함합니다. |
NMTOOLTIPSCREATED |
NM_TOOLTIPSCREATED 알림 코드와 함께 사용되는 정보를 포함합니다. |
READERMODEINFO |
DoReaderMode 함수를 초기화하는 데 필요한 정보를 포함합니다. |
상수
항목 | 콘텐츠 |
---|---|
CDRF 상수 | 이러한 상수는 NM_CUSTOMDRAW 알림 코드에 대한 응답으로 컨트롤에서 반환 값으로 사용됩니다. |
스타일 | 이 섹션에는 공용 컨트롤 스타일이 나열되어 있습니다. 언급된 경우를 제외하고 이러한 스타일은 헤더 컨트롤, 도구 모음 컨트롤 및 상태 창에 적용됩니다. |
창 클래스 | 이 섹션에는 공용 컨트롤 라이브러리에서 제공하는 창 클래스 이름이 나열되어 있습니다. |