Program Language/API | MFC

(MFC) Button Click 이벤트

야곰야곰+책벌레 2024. 5. 21. 17:02
728x90
반응형

Button Click을 테스트해 보는데 이상한 점을 발견했다.

app 밖을 클릭하여 포커스를 잃은 뒤 버튼을 클릭하면 동작을 하지 않는 경우가 발생하는데,

이것은 이전에 눌렀던 버튼을 눌렀을 때 그런 현상이 보였다.

 

화면 밖 클릭 -> 버튼 1 클릭 -> 화면 밖 클릭 -> 버튼 1 클릭 

 

이런 식이다.

 

LButtonDown과 LButtonUp 이벤트는 모두 정상적으로 발생했는데 Click만 발생하지 않는다.

그래서 LButtonDown 이벤트에 SetFocus()를 넣으니 그제야 동작한다.

 

이건 원래 버튼도 그런 건지, 오버라이딩해서 그런 건지는 잘 모르겠다.

어쨌든 해결!!

void CButtonEnh::OnLButtonDown(UINT nFlags, CPoint point)
{
	if (m_bDisabled)
		return;
	SetFocus();

 

728x90
반응형