Q&A

  • Tedit 에서 문자수정 방법 알여주세요
Tedit 박스에서 문자를 입력후 수정할려고 하는데 계속 삽입이 되네요

insert 키를 눌러도 삽입만 되는데 어떻게 하면 되나요

전 초보 입니다. 아시는분 가르쳐 주세요

예)

123456789 라고 데이타가 입력되어 있을때

위 글자에서 수자 5를 0 으로 수정할려고 하는데 0 이 삽입만 되네요



부탁합니다.



1  COMMENTS
  • Profile
    홍성락 2001.08.15 00:54
    이상대 wrote:

    > Tedit 박스에서 문자를 입력후 수정할려고 하는데 계속 삽입이 되네요

    > insert 키를 눌러도 삽입만 되는데 어떻게 하면 되나요

    > 전 초보 입니다. 아시는분 가르쳐 주세요

    > 예)

    > 123456789 라고 데이타가 입력되어 있을때

    > 위 글자에서 수자 5를 0 으로 수정할려고 하는데 0 이 삽입만 되네요

    >

    > 부탁합니다.

    /////////////////////////////////////////////////////////////////////

    Edit1에 overwrite모드를 찾아봐도 없기에 아래와 같이 해보았습니다.

    수정하가며 사용하시면 될겁니다.

    더좋은 방법있으면 게시판에 올려주세요.

    -------------------------------------------------------------------------

    1.전역변수선언over_write : boolean;

    2.폼 Create나 Show에서 초기값부여 over_write := False;

    3.Edit1의 KeyDown이벤트에 코딩

    procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;

    Shift: TShiftState);

    begin

    //insert키상태 확인

    if key = 45 then begin

    over_write := not(over_write);

    if not(over_write) then Edit1.SelLength := 0 ;

    end;

    //화살키누를때,insert키상태 아닐때,여러문자선택시 등 예외사항을 넣는다

    if not(Key in [37..39]) and over_write and (Edit1.SelLength <= 1)then

    Edit1.SelLength := 1 ;

    end;