RAD Studio VCL Reference
|
Determines the width (in pixels) of all columns that have not been explicitly resized.
property DefaultColWidth: Integer;
__property int DefaultColWidth;
Set DefaultColWidth to change the size of all columns in the grid. When DefaultColWidth is set, columns that have been resized using the mouse or by setting the ColWidths property are given the DefaultColWidth as well.
When new columns are added to the grid using the ColCount property, they are created with a width of DefaultColWidth.
C++ Examples:
/* The following code uses the bitmaps in an image list component to draw the contents of each cell in a draw grid. This example includes a draw grid on a form. When the application runs and the form is created, the width of the lines on the draw grid changes if the default column width of the grid is over 90 pixels wide. This example requires a populated image list, or can just display an empty grid. Set the drawgrid DefaultColWidth and GridLineWidth statically to values the cause the button click to do something. */ void __fastcall TForm1::Button1Click(TObject *Sender) { if (DrawGrid1->DefaultColWidth > 90) DrawGrid1->GridLineWidth = 2; else DrawGrid1->GridLineWidth = 1; } void __fastcall TForm1::DrawGrid1DrawCell(TObject *Sender, int ACol, int ARow, TRect &Rect, TGridDrawState State) { int index = ARow * DrawGrid1->ColCount + ACol; DrawGrid1->Canvas->Brush->Color = clBackground; DrawGrid1->Canvas->FillRect(Rect); ImageList1->Draw(DrawGrid1->Canvas, Rect.Left, Rect.Top, index, True); if (State.Contains(gdFocused)) { DrawGrid1->Canvas->DrawFocusRect(Rect); } } void __fastcall TForm1::DrawGrid1SelectCell(TObject *Sender, int ACol, int ARow, bool &CanSelect) { CanSelect = True; }
Delphi Examples:
{ The following code uses the bitmaps in an image list component to draw the contents of each cell in a draw grid. This example includes a draw grid on a form. When the application runs and the form is created, the width of the lines on the draw grid changes if the default column width of the grid is over 90 pixels wide. This example requires a populated image list, or can just display an empty grid. Set the drawgrid DefaultColWidth and GridLineWidth statically to values the cause the button click to do something. } procedure TForm1.Button1Click(Sender: TObject); begin if DrawGrid1.DefaultColWidth > 90 then DrawGrid1.GridLineWidth := 2 else DrawGrid1.GridLineWidth := 1; end; procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var index: Integer; begin index := ARow * DrawGrid1.ColCount + ACol; DrawGrid1.Canvas.Brush.Color := clBackground; DrawGrid1.Canvas.FillRect(Rect); ImageList1.Draw(DrawGrid1.Canvas,Rect.Left,Rect.Top,index, True); if (gdFocused in State) then begin DrawGrid1.Canvas.DrawFocusRect(Rect); end; 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!
|