Menganti font size pada dbgrid

Normalnya dbgrid di set drawing false sehingga jika kita memiliki data yang terlalu panjang deret stringnya akan cenderung jadi masalah, dan tidak nyaman untuk dilihat. Coba kode berikut letakan pada OnDrawColumnCell atau OnDrawDataCell event:

procedure dbgrid1.GridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
Text: string;
R: TRect;
begin
R := Rect;
Text := Column.Field.AsString;
Grid.Canvas.FillRect(Rect); // clear the canvas
Grid.Canvas.Font.Size := 8; // set to ukuran font size
// draw text using WORDBREAK
DrawText(Grid.Canvas.Handle, PChar(Text), Length(Text), R, DT_WORDBREAK);
end;

Anda bisa mengatur besar kecilnya font .

Semoga bermanfaat :)

3 Responses

  1. Aku dah coba tapi kok gak bisa ya isi kolom yang panjang tetep terpotong dan font nya gak bisa kecil tuh…. (im sad)

    aku pake Delphi 7, DBGrid dg dua kolom.
    percobaan: aku taruh di event OnDrawDataCell = error;
    aku taruh di event OnDrawColumnCell = jalan tapi gak ngefek..

    please, explain to me about this case……

  2. ak dulu nyobanya di delphi6 n win 98 blom ak coba di delphi7, kapan2 ak coba di delphi7 deh.

  3. DBGrid1.DefaultDrawing:= False; // coba aja kalo masih ngga’ bisa

    procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
      Field: TField; State: TGridDrawState);
    var
      Text: string;
      R: TRect;
    begin
      R := Rect;
      Text := Field.AsString;
      TDBGrid(Sender).Canvas.FillRect(Rect); // clear the canvas
      TDBGrid(Sender).Canvas.Font.Size := 8; // set to ukuran font size
      // draw text using WORDBREAK
      DrawText(TDBGrid(Sender).Canvas.Handle, PChar(Text), Length(Text), R, DT_WORDBREAK);
    end;
    

    coba deh munk :D

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.