Q&A

  • DBGrid에서 바로 입력, 수정, 삭제.....하려고 합니다.
델 초보입니다.

디비그리드에서 바로바로 입력, 수정, 삭제를 하려고 하는데 컨셉이 잡히지 않습니다. 어떤식으로 구현을 해야 할지, 또 디비그리드에서 어떤 이벤트를 이용해야 하는지,

이렇게 구연하게 되면, 문제점은 없는지......................입력, 수정, 삭제 버튼도 만들어서 사용하려고 합니다........



지나가다 한말씀씩 써주세요~!

1  COMMENTS
  • Profile
    이쁘니 2000.05.22 20:13
    디비그리드를 사용하시게 되면요..



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

    Shift: TShiftState);

    begin

    IF Key = VK_ESCAPE then

    begin

    Close;

    Exit;

    end; //ESC키가 입력되면 취소하는 것.



    if Key = VK_RETURN then

    begin

    if DBGrid1.SelectedIndex < (DBGrid1.FieldCount - 1) then

    begin

    IF Table1.State = dsInsert then

    begin

    DBGrid1.SelectedIndex := DBGrid1.SelectedIndex + 1;

    end

    else

    begin

    DBGrid1.SelectedIndex := DBGrid1.SelectedIndex + 1;

    Exit;

    end;

    end; // 인서트 상태에서 엔터값을 받으면 다음셀로 넘어가는 것.



    if DBGrid1.SelectedIndex = (DBGrid1.FieldCount - 1) then

    Table1.Append;

    //한줄입력이 끈나면 다음줄로 넘어가서 추가 상태가 되는것.



    f := DBGrid1.Fields[0];

    if length(trim(f.Asstring)) =0 then

    begin

    DBGrid1.SelectedIndex :=0;

    Exit;

    end;//맨 첨 셀이 빈칸이면 다시 맨 첨 셀로 가라는 것.

    DBGrid1.SelectedIndex :=0;

    DBGrid1.EditorMode :=True;

    Exit;

    end;

    end;

    를 사용하셔서 작업을 하시면 되구요

    Ctrl+ Del 키를 이용하면 바로 삭제가 되시는건 아시지요?

    수정은 다시 그 셀에 포커스를 놓구 F2를 누르면 되구요..



    그럼 입력이나 수정이나 삭제버튼이 필요 없겠지요..

    그리드를 사용한다구 별다른 문제가 생기는건 아니구요..



    걱정하지 말구 시도를 한번 해보심도 괜차늘듯 합니다.



    도움이 되셔씀 하네요...그럼 행복하세요..



    ===============================================================================

    tommy wrote:

    > 델 초보입니다.

    > 디비그리드에서 바로바로 입력, 수정, 삭제를 하려고 하는데 컨셉이 잡히지 않습니다. 어떤식으로 구현을 해야 할지, 또 디비그리드에서 어떤 이벤트를 이용해야 하는지,

    > 이렇게 구연하게 되면, 문제점은 없는지......................입력, 수정, 삭제 버튼도 만들어서 사용하려고 합니다........

    >

    > 지나가다 한말씀씩 써주세요~!