Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[4091] [답변] SHARPLY7/ MaxLength길이보다 더 많이 입력할때
zpdspf1 [ ] 1290 읽음    1998-08-19 08:53
  안녕하세요. 천리안 프로그래머 포럼 델파이 담당자 댁스터(강범석)입니다.

  메모나 에디트박스 등은 MaxLength라는 속성이 있습니다. 지정된 MaxLength의 값

  을 초과해서 입력할 수 없죠.

  질문하신 내용대로 하실려면 글자를 입력할 때 입력한 글자의 길이와 MaxLength

  값과 비교를 하셔야합니다.

  메모나 에디트박스의 OnKeyPress 이벤트를 사용합니다. OnKeyDown을 사용하지 않

  은 이유는 실제로 메모나 에디트박스에 키를 눌러서 글자가 써지는 것은 숫자키와

  A-Z 키, 그밖에 기호키(,.;'\+~ 등)입니다. 그렇기 때문에 OnKeyDown을 사용하면

  특수키까지 인식하여 MaxLength이상 글자가 입력된 후 메시지 창을 띄우고 나서

  화살표키를 누른다던가 할 때 문제가 생깁니다. 그러므로 이경우에는 WM_CHAR을

  발생시키는 OnKeyPress이벤트를 사용합니다.

  procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
  begin
      if (Length(Edit1.Text) = Edit1.MaxLength) then
            ShowMessage('최대 입력치를 초과했습니다.');
  end;


         ┏━━━┳━┳━┳━━━┳━┳━┳━━━┳━━━┳━━━┓
         ┃      ┃  ┃  ┃      ┃  ┃  ┃      ┃      ┃  __  ┃
         ┃      ┃      ┃    ━┫      ┃      ┃    ━┫      ┃
         ┃      ┃      ┃      ┣━  ━┫   :  ┃      ┃    ━┫
         ┃      ┃      ┃    ━┫      ┃      ┃    ━┫      ┃
         ┗┓  ┏┫  ┃  ┃      ┃  ┃  ┃      ┃      ┃  ┃  ┃
           ┗━┛┗━┻━┻━━━┻━┻━┻━━━┻━━━┻━┻━┛



+ -

관련 글 리스트
4091 [답변] SHARPLY7/ MaxLength길이보다 더 많이 입력할때 zpdspf1 1290 1998/08/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.