Q&A

  • DBGrid에서 아래화살표로 insert 모드로 변환된걸 check.
안녕하세요.

다름이 아니오라 디비그리드상에서

insert 키를 넣어도 삽입이 되고

맨 마지막의 레코드에서 아래화살표키를 눌러도 삽입이 됩니다.

그런데... 삽입시 항상 맨위부터(최종것이 항상 위로) 삽입되야 되는

경우인데요...

아래 화살표 키를 맨 마지막 레코드에서 누를때는 삽입이 되지 않고

더이상내려가지 않게 하고 싶어요.



그래서 아래화살표 키로 dbgrid (또는 연결된 dataset)에서 insert 상태로 전환되었는지를 구분할 수 있을려면 어떻게 해야 하는지요....................??



고수님들의 조언을 부탁드립니다요.....

4  COMMENTS
  • Profile
    이재식 2000.05.23 21:49
    이재식 Wrote :

    안녕하세요?



    디비그리드에서 아래방향키를 눌렀을때 삽입되는것을

    막으려면 해당 테이블내지 쿼리 컴포넌트의

    BeforeInsert이벤트에 다음처럼 코딩하시면 됩니다.

    Abort ;

    이 한줄이면 됩니다.



  • Profile
    라큐라 2000.05.23 22:12
    이재식 wrote:

    > 이재식 Wrote :

    > 안녕하세요?

    >

    > 디비그리드에서 아래방향키를 눌렀을때 삽입되는것을

    > 막으려면 해당 테이블내지 쿼리 컴포넌트의

    > BeforeInsert이벤트에 다음처럼 코딩하시면 됩니다.

    > Abort ;

    > 이 한줄이면 됩니다.

    >



    감사합니다만.. 그렇게 하면 insert key를 누른 경우도 안되거덩여...

    저는 단지 방향키로만 (아래화살표키) insert가 안되도록 하고 싶습니다요....

  • Profile
    조규춘 2000.05.23 22:55
    라큐라 wrote:

    > 이재식 wrote:

    > > 이재식 Wrote :

    > > 안녕하세요?

    > >

    > > 디비그리드에서 아래방향키를 눌렀을때 삽입되는것을

    > > 막으려면 해당 테이블내지 쿼리 컴포넌트의

    > > BeforeInsert이벤트에 다음처럼 코딩하시면 됩니다.

    > > Abort ;

    > > 이 한줄이면 됩니다.

    > >

    >

    > 감사합니다만.. 그렇게 하면 insert key를 누른 경우도 안되거덩여...

    > 저는 단지 방향키로만 (아래화살표키) insert가 안되도록 하고 싶습니다요....





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

    Shift: TShiftState);

    begin

    if (key=vk_down) and (table1.State = dsInsert) then

    begin

    table1.abort;;

    end;



    end;



  • Profile
    라큐라 2000.05.24 00:38
    조규춘님 캄사합니다...!!



    저의 짧은 지식에 매우 부끄럽군요...:)