Q&A

  • DBGrid의 CompoentCount에 대한 질문입니다.
DBGrid의 CompoentCount에 대한 질문입니다.
procedure TfkGyejong_jae.dbgYearDblClick(Sender: TObject);
var
  aa : integer;
begin
  aa := dbgYear.ComponentCount;
  if aa = 0 then
    showmessage('자료가 없습니다.')
  else begin
    with dmCocos.qJong3 do
    begin
      close;
      parambyname('euigubun').asstring := inttostr(rgGubun.itemindex);
      parambyname('brand').asstring := copy(cbBrand.text,1,1);
      parambyname('year').asstring := dbgYear.fields[0].value;
      open;
    end;
    with dmCocos.qJong4 do
    begin
      close;
      parambyname('euigubun').asstring := inttostr(rgGubun.itemindex);
      parambyname('brand').asstring := copy(cbBrand.text,1,1);
      parambyname('year').asstring := dbgYear.fields[0].value;
      open;
    end;
    lYear.caption := dbgYear.fields[0].value;
    lGyejeol.caption := '';
    lDaeJong.caption := '';
    lSoJong.caption := '';
  end;
end;
위의 코딩이 진행이 되기전에 조회 버튼에 의하여
dbgYear grid에 조회된 내역이 있습니다..

dbgYear인 Dbgrid 위와같이 코딩을 한 후 마우스를 더블 클릭시
DbGrid ComponentCount의 값이 0이 되어
실제 Db Grid상에 값이 있는대도
위의 코딩에서 0인 부분이 실행이 됩니다.
Dbgrid 셀내의 값의 정렬방향은 오른쪽 정렬인데
마우스로 정렬 방향이 왼쪽으로 변경을 시킨 후 마우스 더블 클릭을 하면
DbGrid ComponentCount의 값이 1이 되어
위의 코딩의 0이 아닌 것이 실행이 됩니다.

제가 잘 몰라서 죄송합니다...
아시는 분의 대답을 부탁드립니다....
2  COMMENTS
  • Profile
    nilriri™ 2006.11.29 23:17
    dbgYear에 조회된 데이터가 있는지 여부를 검사하시려면..

    if dbgYear.DataSource.DataSet.isEmpty then  또는

    if dbgYear.DataSource.DataSet.RecordCount > 0 then  을 사용해 보십시오.




  • Profile
    고금순 2007.01.19 22:04



    해결이 됐습니다. 너무 너무 감사합니다.