입력된 글자수에 대하여 반응하는 프로그래밍을 하던중에
영문일땐 한글자를 1바이트로 계산하고
한글일경우엔 2바이트로 계산하기때문에
GetLength() 를 하면 정확한 글자수를 구하기가 힘들었습니다.
이곳저곳을 찾아봐도 해결책을 찾기 힘들었는데
API 함수중에
SendDlgItemMessageW 를 사용하면 해결할수있다는것을 알았습니다.
예를 들어 editbox 가 IDC_EDITTEXT 라면
int Len = SendDlgItemMessageW(m_hWnd,IDC_EDITEDIT,WM_GETTEXTLENGTH,0,NULL);
이라고 하면 정확한 글자갯수가 나옵니다.
영문일땐 한글자를 1바이트로 계산하고
한글일경우엔 2바이트로 계산하기때문에
GetLength() 를 하면 정확한 글자수를 구하기가 힘들었습니다.
이곳저곳을 찾아봐도 해결책을 찾기 힘들었는데
API 함수중에
SendDlgItemMessageW 를 사용하면 해결할수있다는것을 알았습니다.
예를 들어 editbox 가 IDC_EDITTEXT 라면
int Len = SendDlgItemMessageW(m_hWnd,IDC_EDITEDIT,WM_GETTEXTLENGTH,0,NULL);
이라고 하면 정확한 글자갯수가 나옵니다.