설마 20만건을 스트링 그리드에 다 뿌려주신건 아뉘져?
보이는 부분만 뿌려주세요.
Query1AfterScroll 이벤트에서 그때 그때 현재화면을 뿌리세요.
커서 위치두 새루 잡아주시고요. 그럼 될겁니다.
아래것은 체크박스를 디비그리드에 올린거구요
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
if ( gdFocused in State ) then begin
if ( Field.FieldName = DBCheckBox1.DataField ) then begin
with DBCheckBox1 do begin
Left := Rect.Left + DBGrid1.Left;
Top := Rect.Top + DBGrid1.Top;
Width := Rect.Right - Rect.Left;
Visible := True;
end;
end;
end;
end;
레마 님이 쓰신 글 :
: DBGrid 를 사용하지 않고 StringGrid를 통해서 데이타를 보여줍니다.
: 이유인즉 CheckBox 구현이 좀 까다로워서 StringGrid를 선택했는데..
:
: 데이타 건수가 200,000 만건 정도 됩니다.
: SQL 자체는 빠른데 StringGrid 에 데이타를 보여주는 시간이 엄청 걸리더라고요..
:
:
: 해결방법이 없는지요..
:
:
:
|