728x90
728x90
SetDlgItemText(), SetDlgItemTextA(), SetDlgItemTextW(), GetDlgItemText(), .... 등은 에디트 컨트롤에 텍스트를 출력, 읽기 등이 가능한 함수
SetDlgItemText
SetDlgItemText() : 에디트 컨트롤에 텍스트 출력. 16bit
void SetDlgItemText(int nID, LPCTSTR lpszString);
// 매개 변수 nID의 아이디를 가진 컨트롤에 lpszString의 문자열을 입력해주는 함수이다.
SetDlgItemTextA() : 32bit
SetDlgItemTextW() : wide
* LPCTSTR :
LP : long pointer의 약자.
C : constant (상수)
T : 운영체제가 multi-byte환경이면, char형으로,
unicode환경이면, w_char, wide char형으로 type casting
STR : string 형의 자료
GetDlgItemText
GetDlgItemText() : 에디트 컨트롤에서 텍스트를 가져오는 함수. 16bit
GetDlgItemTextA() : 32bit
GetDlgItemTextW() : wide
결론
자동으로 유니코드 문자열을 사용하나, 멀티바이트 문자열을 사용하느냐에 따라서 전처리기가 변환해주기 때문에 혹시 모를 미래를 생각해서 SetDlgItemText, GetDlgItemText를 써 주는 게 좋다.
현재는 유니코드 모드여서 SetDlgItemText를 사용하면 SetDlgItemTextW로 자동 변환되고 있다.
멀티바이트 모드를 사용중이라면 SetDlgItemTextA로 자동 변환될 것이다.
* 참조 포스팅 : 1
728x90
728x90
'C, C++' 카테고리의 다른 글
[C++] 클래스의 virtual 소멸자 (0) | 2021.10.27 |
---|---|
[MFC] "const char *" 형식의 인수가 "LPCWSTR" 형식의 매개 변수와 호환되지 않습니다 (0) | 2021.10.25 |
[MFC] CStdioFile과 CFile의 차이점 (0) | 2021.10.22 |
[C++] POSIX function names 오류 (0) | 2021.10.19 |
비주얼스튜디오 문자집합(유니코드 vs 멀티바이트) (0) | 2021.10.13 |