MFC C++: Edit Control 숫자 범위 설정하기

Posted by 드린
2019.05.01 07:12 IT

이번 글에서는 Edit Control에 숫자만 입력을 받게 하였을 때

숫자 범위를 지정하는 방법에 대해서 알려드리려고합니다.

visual studio 6.0인 경우 클래스 마법사에서 가능했지만, 그 이후 버전에서는 직접 지정을 해줘야 한다고 하네요.

좀 번거롭네요.

 

우리가 Eidt Control 숫자 범위를 설정하기 위해서는 DoDataExchange 함수에서 설정을 해줘야합니다.

DoDataExchange 함수는 기본적으로 pDX 변수를 받고 있습니다.

먼저 컨트롤과 임의의 멤버 변수와 연결시켜 주어야합니다.

정수로 가정을 하고 예를 들겠습니다.

int m_a; 라는 멤버 변수가 있을 때

DDX_Text(pDX, IDC_EDIT1, m_a); 이렇게 연결을 해줍니다.

그리고 이제 컨트롤과 연결되어진 멤버 변수의 범위를 지정해주어야합니다.

DDV_MinMaxInt(pDX, m_a, 0, 10);

이렇게 지정을 하시면 IDC_EDIT1 아이디를 가진 Edit Control에 0 ~ 10까지만 입력 가능하도록 설정됩니다.

조금 까다롭지만 그래도 하고 나면 자주 사용하실 기능입니다.

pDX를 멤버 변수로 가지고 계시면, 이벤트에서도 처리를 할 수 있답니다.

참고하세요.

이 댓글을 비밀 댓글로