Q&A

  • DBGrid에서 선택된 Row알아내는 방법과 마지막셀에서 행추가 무시하기
DBGrid 에서

DBGrid에서 선택된 Row알아내는 방법과 마지막셀에서 행추가 무시하기
2  COMMENTS
  • Profile
    DelChoBo 2002.11.07 00:59
    2번째 질문의 방법으로..
    테이블 컴포넌트나 쿼리 컴포넌트의 BeforeInsert 를 쓰셔도 됩니다.
    아래 처럼요..

    procedure TForm1.TTable1BeforeInsert(DataSet : TDataSet);
    begin
      Abort;
    end;

    그럼 이만...

  • Profile
    임형호 2002.11.06 22:50
    Table 컴포넌트로 테스트를 해봤는데요.
    1번에 Row의 Index는  Table1.RecNo 를 참조하시면 됩니다.
    그리고 줄이바뀔때... 가령 edit에 나타내고 싶으시면..

    DataSource 컴포넌트의  DataChang이벤트를 이용하시면 되구요.

    procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
    begin
      Edit1.Text:=IntToStr(Table1.Recno);
    end;


    2번은 수정 및 입력을 아예 불가능하게 하려면..
    DBGrid의 속성중에 Options 의 dgEditing을 False로 하면 되구요.
    입력만 막을려면  연결된 DataSource 이벤트에 이렇게 기입하시면
    막을수 있을것 같네요.

    procedure TForm1.DataSource1StateChange(Sender: TObject);
    begin
      if Table1.State = dsinsert then
          Table1.Cancel;
    end;