Einzelnen Beitrag anzeigen

Roadrunner.1

Registriert seit: 3. Mai 2009
20 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Fontfarbe in TStringgrid ändern ;-)

  Alt 3. Mai 2017, 11:12
Hier mal ein komplettes Programm. Formular, Stringgrid, Button

unit Unit1;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Grids;

type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Button1: TButton;
procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect;
State: TGridDrawState);
begin
if (ACol=4) and (ARow>0) then begin
with StringGrid1.Canvas do begin
Font.Color:=clred;
FillRect(Rect);
Textout(Rect.Left+2,Rect.Top+2, StringGrid1.Cells[ACol,ARow]);
end;
end;
end;
end.
(Options von TStringgrid zusätzlich zum Default: goEditing, goAlwaysShowEditor)

Nach meinem Verständnis sollte folgendes Bild nicht möglich sein einzugeben (Die 12345 müsste rot sein) Siehe Anhang:
Hierzu einfach Spalte 4 gefüllt, Spalte 5 gefüllt dann einen anderen Wert von Spalte 5 ausgewählt und TAB gedrückt.

Sie steht auch weiter links und höher, vermutlich funkt der InplaceEditor dazwischen, aber wie und wann schalte ich den ab,
damit der nicht nach mir nochmal drüber malt? In onExit hatte ich jetzt schon versuchsweise das goEditing und goAlwaysShowEditor
abgeschaltet, aber hübsch ist anders (Blauer Hintergrund bleibt, fette Schriftart und falsche Ausrichtung).

Oder sollte ich versuchen dort die Schriftart zu Ändern? Geht das überhaupt?
Miniaturansicht angehängter Grafiken
capture.jpg  
Christian Drenkard
--
mfg.
Christian Drenkard
  Mit Zitat antworten Zitat