이건 다른 방법입니다만
마스크에디트를 이용하기도 합니다.
장단점이 다 있습니다.
마스크 에디트는 소스 레벨어서 추가적인 코딩을 할 필요가 없어서 좋긴한데
특유의 포멧 지정자 때문에 가독성이 떨어지죠.
빌더 콤포넌트 'Additional'에 가면 MaskEdit가 있습니다.
일반 에디트 대신 이것을 놓고
EditMask 속성에 다음과 같이 입력해 보세요
AAAA999AAA;1;_
그럼
5,6,7번째만 숫자고 나머지는 문자나 숫자로만 입력 가능한
10자리만 받고 특수기호나 공백는 입력안되는
에디트가 됩니다.
초보자 님이 쓰신 글 :
: 제목 그대로 TEdit에 10자리 data를 입력 받지만,
: 5번째, 6번째 입력값은 무조건 숫자만 받고싶어요.
: 어떻게 하죠??????
:
: 전체를 숫자로 받는다면 속성을 변경하면 쉽게 할수 있는데....
: 입력 받는 문자 중간에는....ㅠ.ㅜ
:
: ---------------------------------------------------------------
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
: String input_data_1;
: input_data_1 = Edit1->Text;
:
: if (5~6번째 입력값이 숫자인 경우 ) { // <<==== 여기를 어떻게 해야 할지.....전혀 모르겠네요...ㅠ.ㅜ
: MessageDlg("정상적인 DATA입니다. " , mtWarning ,TMsgDlgButtons()<<mbOK,0);
: } else { //5~6번째 입력값이 숫자가 아닌 경우
: MessageDlg("5~6번째 입력 DATA는 숫자로 입력하여야 합니다. 다시 입력하세요." , mtWarning ,TMsgDlgButtons()<<mbOK,0);
: }
: }
: --------------------------------------------------------------------
:
|