: ,
,
.
, , ,
. DBGrid, TEdit,
dbgrid ( dbgrid) 3 TButtons,
OnClick.
, ,
dbgrid dbgrid OnDrawColumnCell
. ( 700
, ), -
gui , .
( Set SetelectedCount setter).
type
TForm1 = class(TForm)
[...]
private
FSelectedCount: Integer;
procedure SetSelectedCount(const Value: Integer);
public
procedure ShowSelectedCount;
property SelectedCount : Integer read FSelectedCount write SetSelectedCount;
end;
[...]
procedure TForm1.btnClearSelectedClick(Sender: TObject);
begin
DBGrid1.SelectedRows.Clear;
end;
procedure TForm1.btnGetSelectedClick(Sender: TObject);
begin
ShowSelectedCount;
end;
procedure TForm1.btnSetSelectedClick(Sender: TObject);
begin
DBGrid1.SelectedRows.CurrentRowSelected := True;
end;
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
SelectedCount := DBGrid1.SelectedRows.Count;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
ActiveControl := Edit1; // so the grid does not have focus when the form is first shown
SelectedCount := -1;
end;
procedure TForm1.SetSelectedCount(const Value: Integer);
begin
if FSelectedCount <> Value then begin
FSelectedCount := Value;
ShowSelectedCount;
end;
end;
procedure TForm1.ShowSelectedCount;
begin
Caption := IntToStr(DBGrid1.SelectedRows.Count);
end;
DataSet.AfterScroll -gui-, . , DBGrid, , , , , (, ) .
,
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
Caption := IntToStr(DBGrid1.SelectedRows.Count);
end;
, - , Shift + Down .
,
procedure TForm1.DBGrid1KeyUp(Sender: TObject; var Key: Word; Shift:
TShiftState);
begin
Caption := IntToStr(DBGrid1.SelectedRows.Count);
end;
() . , Key, .
, , AfterScroll, q, , ( , ) , +1.