Program Language/API | MFC

[MFC] Control 보여주고 숨기기 (확인하기)

야곰야곰+책벌레 2022. 3. 11. 14:51
728x90
반응형

MFC에서 GUI를 구성할 때 사용하는 Control은 조건에 따라서 보여주거나 숨겨야 한다. 이때 사용하는 함수가 ShowWindow()이다. 편법으로는 MoveWindow()를 이용하여 Size를 0으로 만들어주면 되기도 한다.

CEdit m_edit; // 라고 선언했다면,

m_edit.ShowWindow(SW_SHOW); // 보여주기
m_edit.ShowWindow(SW_HIDE); // 숨기기

이때, SHOW/HIDE 상태를 확인하기 위해서는 IsWindowVisible() 함수를 사용할 수 있다. 물론 CEdit를 Subclassing 하여 OnShowWindow() 이벤트 내에서 선언된 변수에 정보를 저장하여 알 수도 있다.

if (!m_edit.IsWindowVisible())
	// SW_HIDE 상태
else
{
	// SW_MINIMIZE 확인 : IsIconic
	// SW_MAXIMIZE 확인 : isZoomed
	// SW_SHOW 확인 : 모두 아닐 때
}

Control에는 Minimize/Maximize가 없으므로 SW_SHOW/SW_HIDE만 확인하면 된다.

728x90
반응형