EDIT 컴포넌트 숫자만 입력, 오른쪽 정렬 등등
컨텐츠 정보
- 35,346 조회
- 0 추천
- 목록
본문
TEdit를 비롯하여 EDIT 컨트롤에 숫자만 입력받도록 하는 방법은?
여러가지가 있겠지만
간단히 GWL_STYLE을 변경해주므로 가능합니다.
가끔 필요한데 생각이 나지 않아서 찾아야 하는데.. 찾는 수고를 덜기 위해서 여기에 ....
@C++Builder에서
void __fastcall TDLG_MANAGE::FormCreate(TObject *Sender) { SetWindowLong(Edit1->Handle,GWL_STYLE,GetWindowLong(Edit1->Handle,GWL_STYLE)|ES_NUMBER); } |
@ Delphi 에서
procedure TForm1.FormCreate(Sender: TObject); begin SetWindowLong(Edit1.Handle,GWL_STYLE,GetWindowLong(Edit1.Handle,GWL_STYLE) or ES_NUMBER); end; |
@기타 Edit Style
ES_AUTOHSCROLL |
에디트 컨트롤 내에 텍스트를 입력할 때 에디트 영역의 크기를 넘기면 자동으로 수평 스크롤된다. |
ES_AUTOVSCROLL |
여러 줄의 에디트 컨트롤 내에 텍스트를 입력할 때 자동으로 수직스크롤된다. |
ES_CENTER |
여러 줄의 에디트 컨트롤에서 텍스트를 가운데로 정령한다. |
ES_LEFT |
텍스트를 좌측으로 정렬한다. |
ES_LOWERCASE |
에디트 컨트롤에 소문자의 입력만을 허용한다. 대문자가 입력되면 자동으로 소문자로 바뀐다. |
ES_MULTILINE |
여러 줄의 에디트 컨트롤을 만든다. 엔터키를 개행 문자(Carriage Return)로 인식시키려면 ES_WANTRETURN 스타일을 이용해야 한다. |
ES_NOHIDESEL |
에디트 컨트롤에 입력 초점을 가지고 있지 않더라도 선택 영역 표시가 없어지지 않도록 한다. |
ES_NUMBER |
에디트 컨트롤에 숫자만이 입력될 수 있도록 한다. |
ES_OEMCONVERT |
입력된 텍스트는 Windows 문자셋에서 OEM 문자 세트로 변환되며 다시 Windows 세트로 되돌려진다. 이는 CharToOem 함수를 사용했을 때 변환이 정확히 일어나게 해준다. (OEM - See original equipment manufacturer.) |
ES_PASSWORD |
입력되는 각 문자를 암호 문자로 표시한다. 디폴트 암호 문자는 애스터리스크(*)이다. 암호문자를 변경 하려면 ES_SETPASSWORDCHAR 메시지를 이용한다. |
ES_READONLY |
읽기 전용 컨트롤을 생성하여 사용자가 컨트롤 내에 텍스트를 입력하거나 편집할 수 없도록 한다. |
ES_RIGHT |
여러 줄의 에디트 컨트롤에서 텍스트를 오른쪽으로 정렬한다. |
ES_UPPERCASE |
에디트 컨트롤에 대문자의 입력만을 허용한다. 소문자가 입력되면 자동으로 대문자로 바뀐다. |
ES_WANTRETURN |
엔터키를 여러 줄의 에디트 컨트롤에서 개행 문자로 인식하도록 한다. 디폴트는 엔터키를 주르면 대화 상자 내의 디폴트 버튼을 선택하게 되며 이 때에는 ctrl-enter 키가 개행 문자 역할을 한다. |
관련자료
-
링크