RAD Studio VCL Reference
|
Specifies the index of the first visible scrollable row in the grid.
property TopRow: Longint;
__property Longint TopRow;
Read TopRow to determine the index of the first row in the scrollable region that is visible. Set TopRow to scroll the rows in the grid so that the row with index TopRow is the first row after the fixed rows.
C++ Examples:
/* This code uses a draw grid and a button on a form. When the user clicks the button, the last row of the draw grid becomes the top row. This example requires a button, a DrawGrid and a populated ImageList. */ void __fastcall TForm1::Button1Click(TObject *Sender) { DrawGrid1->TopRow = DrawGrid1->RowCount - 1; } void __fastcall TForm1::DrawGrid1Click(TObject *Sender) { Label1->Caption = "From OnClick: The cursor is in column " + IntToStr(DrawGrid1->Col + 1) + ", row " + IntToStr(DrawGrid1->Row + 1); } void __fastcall TForm1::DrawGrid1DrawCell(TObject *Sender, int ACol, int ARow, TRect &Rect, TGridDrawState State) { int index = (ARow * DrawGrid1->ColCount + ACol) % (DrawGrid1->ColCount + 1); if (State.Contains(gdSelected)) DrawGrid1->Canvas->Brush->Color = clYellow; else DrawGrid1->Canvas->Brush->Color = clBackground; DrawGrid1->Canvas->FillRect(Rect); if (State.Contains(gdFocused)) { DrawGrid1->Canvas->DrawFocusRect(Rect); Label2->Caption = "From OnDrawCell: Cell " + IntToStr(ARow * DrawGrid1->ColCount + ACol) + " has the focus."; } if ((ARow >= DrawGrid1->FixedRows) && (ACol >= DrawGrid1->FixedCols)) ImageList1->Draw(DrawGrid1->Canvas, Rect.Left, Rect.Top, index, True); } void __fastcall TForm1::DrawGrid1SelectCell(TObject *Sender, int ACol, int ARow, bool &CanSelect) { CanSelect = True; }
Delphi Examples:
{ This code uses a draw grid and a button on a form. When the user clicks the button, the last row of the draw grid becomes the top row. This example requires a button, a DrawGrid and a populated ImageList. } procedure TForm1.Button1Click(Sender: TObject); begin DrawGrid1.TopRow := DrawGrid1.RowCount - 1; end; procedure TForm1.DrawGrid1Click(Sender: TObject); begin Label1.Caption := 'From OnClick: The cursor is in column ' + IntToStr(DrawGrid1.Col + 1) + ', row ' + IntToStr(DrawGrid1.Row + 1); end; procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var index: Integer; begin index := (ARow * DrawGrid1.ColCount + ACol) mod (DrawGrid1.ColCount + 1); if (gdSelected in State) then DrawGrid1.Canvas.Brush.Color := clYellow else DrawGrid1.Canvas.Brush.Color := clBackground; DrawGrid1.Canvas.FillRect(Rect); if (gdFocused in State) then begin DrawGrid1.Canvas.DrawFocusRect(Rect); Label2.Caption:= 'From OnDrawCell: Cell ' + InttoStr(ARow * DrawGrid1.ColCount + ACol) + ' has the focus.'; end; if ((ARow >= DrawGrid1.FixedRows) AND (ACol >= DrawGrid1.FixedCols)) then ImageList1.Draw(DrawGrid1.Canvas,Rect.Left,Rect.Top,index, True); end; procedure TForm1.DrawGrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean); begin CanSelect:= True; end;
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
|
What do you think about this topic? Send feedback!
|