Yorumları: 56
Konuları: 11
Kayıt Tarihi: 16-08-2017
Aktif Kullandığınız Delphi Sürümü:
- Delphi 10.2
- Delphi XE
- Delphi 7
- Lazarus / FPC
Rep Puanı: 82 Başlangıç
Arkadaşlar merhaba,
multi device application'da Grid veya Stringgrid'in şartları sağlayan hücrelerin zemin rengi ve yazı fontlarında değişiklik nasıl yapılıyor? Yardımcı olabilirmisiniz
teşekkürler
Yorumları: 1.393
Konuları: 75
Kayıt Tarihi: 20-03-2017
Aktif Kullandığınız Delphi Sürümü:
- Delphi 10.3
- Delphi 10.2
- Delphi 7
- Lazarus / FPC
Rep Puanı: 3.892 Uzman
16-03-2018, Saat: 22:04
(Son Düzenleme: 17-03-2018, Saat: 00:04, Düzenleyen: mcuyan.)
(15-03-2018, Saat: 22:21)burakb44 Adlı Kullanıcıdan Alıntı: Arkadaşlar merhaba,
multi device application'da Grid veya Stringgrid'in şartları sağlayan hücrelerin zemin rengi ve yazı fontlarında değişiklik nasıl yapılıyor? Yardımcı olabilirmisiniz
teşekkürler
procedure TForm8.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if ib1.Recno mod 2 = 0 then
DBGrid1.Canvas.Brush.Color := clmoneygreen
else
DBGrid1.Canvas.Brush.Color := $00E3F9D5;
with DBGrid1.Canvas do
begin
if (gdSelected in State) then // seçili alanın renk ve yazı fontu
begin
Brush.Color := $00FFA042; // $00E2D032; //seçim rengi
Font.Color := ClBlack; // yazı rengi
Font.Size := 8; // yazı büyüklüğü
// Font.Style := font.Style + [fsBold]; // yazı kalın olsun
FillRect(Rect);
end;
end;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
Yorumları: 1.393
Konuları: 75
Kayıt Tarihi: 20-03-2017
Aktif Kullandığınız Delphi Sürümü:
- Delphi 10.3
- Delphi 10.2
- Delphi 7
- Lazarus / FPC
Rep Puanı: 3.892 Uzman
pardon düzenledim.. span kısmı olmamalıydı..
Yorumları: 56
Konuları: 11
Kayıt Tarihi: 16-08-2017
Aktif Kullandığınız Delphi Sürümü:
- Delphi 10.2
- Delphi XE
- Delphi 7
- Lazarus / FPC
Rep Puanı: 82 Başlangıç
(17-03-2018, Saat: 00:05)mcuyan Adlı Kullanıcıdan Alıntı: pardon düzenledim.. span kısmı olmamalıydı..
Kod vcl için fmx için sormuştum, sanırım kimse paylaşmak istemiyor ☺️
Yorumları: 342
Konuları: 15
Kayıt Tarihi: 16-08-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 2.711 Uzman
Merhaba,
Eski bir konu fakat, ihtiyaç doğrultusunda kullanmam gerekti, buradada cevaplanmamış konu olarak gördüğüm için paylaşmak istedim.
İyi Çalışmalar.
procedure TFrmMain.StringGrid1DrawColumnCell(Sender: TObject;
const Canvas: TCanvas; const Column: TColumn; const Bounds: TRectF;
const Row: Integer; const Value: TValue; const State: TGridDrawStates);
var
SatirRengi: TBrush;
begin
SatirRengi := Tbrush.Create(TBrushKind.Solid,TAlphaColors.Alpha);
if (Sender as TStringGrid).Cells[ 3, Row ] = '0' then // 4. Stun Değeri 0 ise o satırı boyamak içindir.
begin
SatirRengi.Color := TAlphaColors.Yellow;
Canvas.FillRect(Bounds, 0, 0, [], 1, SatirRengi);
Column.DefaultDrawCell(Canvas, Bounds, Row, Value, State);
end;
if Column.Header='DEPARTMAN' then // DEPARTMAN Başlıklı stunu komple boyamak içindir.
begin
SatirRengi.Color := TAlphaColors.RED;
Canvas.FillRect(Bounds, 0, 0, [], 1, SatirRengi);
Column.DefaultDrawCell(Canvas, Bounds, Row, Value, State);
end;
SatirRengi.free;
end;
Yorumları: 56
Konuları: 11
Kayıt Tarihi: 16-08-2017
Aktif Kullandığınız Delphi Sürümü:
- Delphi 10.2
- Delphi XE
- Delphi 7
- Lazarus / FPC
Rep Puanı: 82 Başlangıç
(23-06-2021, Saat: 13:08)Teşekkürler ozcanm Adlı Kullanıcıdan Alıntı: Merhaba,
Eski bir konu fakat, ihtiyaç doğrultusunda kullanmam gerekti, buradada cevaplanmamış konu olarak gördüğüm için paylaşmak istedim.
İyi Çalışmalar.
procedure TFrmMain.StringGrid1DrawColumnCell(Sender: TObject;
const Canvas: TCanvas; const Column: TColumn; const Bounds: TRectF;
const Row: Integer; const Value: TValue; const State: TGridDrawStates);
var
SatirRengi: TBrush;
begin
SatirRengi := Tbrush.Create(TBrushKind.Solid,TAlphaColors.Alpha);
if (Sender as TStringGrid).Cells[ 3, Row ] = '0' then // 4. Stun Değeri 0 ise o satırı boyamak içindir.
begin
SatirRengi.Color := TAlphaColors.Yellow;
Canvas.FillRect(Bounds, 0, 0, [], 1, SatirRengi);
Column.DefaultDrawCell(Canvas, Bounds, Row, Value, State);
end;
if Column.Header='DEPARTMAN' then // DEPARTMAN Başlıklı stunu komple boyamak içindir.
begin
SatirRengi.Color := TAlphaColors.RED;
Canvas.FillRect(Bounds, 0, 0, [], 1, SatirRengi);
Column.DefaultDrawCell(Canvas, Bounds, Row, Value, State);
end;
SatirRengi.free;
end;
Yorumları: 75
Konuları: 6
Kayıt Tarihi: 08-01-2019
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 182 Başlangıç
06-08-2021, Saat: 10:01
(Son Düzenleme: 06-08-2021, Saat: 10:02, Düzenleyen: ahmet6513.)
Fmx de bu kod ile renklendirmiştim
procedure TSiparisDetayF.StringGrid1DrawColumnCell(Sender: TObject;
const Canvas: TCanvas; const Column: TColumn; const Bounds: TRectF;
const Row: Integer; const Value: TValue; const State: TGridDrawStates);
begin
aRowColor := TBrush.Create(TBrushKind.Solid, TAlphaColors.Alpha);
if Siparis_QKalan.AsFloat > 0 then
aRowColor.Color := TAlphaColorRec.Aqua
else
if Siparis_QKalan.AsFloat = 0 Then
ARowColor.Color := TAlphaColorRec.Lime
else
if Siparis_QKalan.AsFloat < 0 then
aRowColor.Color := TAlphaColorRec.Aliceblue;
aNewRectF := Bounds;
aNewRectF.Inflate(3, 3);
Canvas.FillRect(aNewRectF, 0, 0, [], 1, aRowColor);
Column.DefaultDrawCell(Canvas, Bounds, Row, Value, State);
aRowColor.free;
end;
|