'롤 오버'에 해당되는 글 1건

  1. MFC 버튼 마우스 커서 변경



간단한 코드 추가로 위 그림과 같이 버튼의 커서를 변경시킬 수 있습니다.

변경하고자 하는 버튼의 컨트롤 변수를 만들고, OnInitDialog 함수에 다음과 같이 코드를 추가합니다.


  
BOOL CTestDlg::OnInitDialog()
{
	// 자동으로 생성되는 코드는 생략합니다.
	// TODO: 여기에 추가 초기화 작업을 추가합니다.

	// 버튼의 마우스 커서 변경
	// (m_ctrlButton: 해당 버튼의 컨트롤 변수)
	HCURSOR hCursor; 
	hCursor = AfxGetApp()->LoadStandardCursor(IDC_HAND); 
	SetClassLong(m_ctrlButton.GetSafeHwnd(),GCL_HCURSOR,(LONG)hCursor);

	return TRUE;  // 포커스를 컨트롤에 설정하지 않으면 TRUE를 반환합니다.
}


SetClassLong 함수는 해당 윈도우 핸들을 통하여 클래스 정보를 수정하는 함수입니다.

이를 통해 버튼 클래스의 커서 정보를 수정하는 원리입니다.