Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Stringgridzelle einfärben aber den Text beibehalten (https://www.delphipraxis.net/108441-stringgridzelle-einfaerben-aber-den-text-beibehalten.html)

R34DM3 13. Feb 2008 18:50


Stringgridzelle einfärben aber den Text beibehalten
 
moin!
hab da ein problem
und bis jetzt habe ich nicht wirklich eine passende antwort per search im forum gefunden -.-

und zwar:
ich habe ein stringgrid in das im laufe des programms texte geschrieben werden - eine
art tagebuch - nun wird bei buttonklick eine bestimmte zelle bearbeitet
und der auftrag der darin stand "beendet" an dieser stelle kommt mein problem
ich würde diese zeile gerne einfärben.
habs mit on drawcell etc versucht und son paar sachen zu onbuttonclick ereignissen
gefunden doch fehlt mir das wissen um die sachen so zu verändern dass es is meinem prog
auch funzt

hier mal kurz ein beispiel zum problem:

Timer - schreibe in reihe x 'text'; x + 1;

buttonclick - inputbox(...,...,aktuelleReihe) -> aktuelleReihe soll eingefärbt werden

mfg markus

taaktaak 13. Feb 2008 19:12

Re: Stringgridzelle einfärben aber den Text beibehalten
 
Moin, Moin,
das OnDraw-Event ist schon der richtige Ansatzpunkt. Da gibt's doch unzählige Beispiele, wie man Zellen einfärbt. Einfach noch mal suchen, du wirst mit Sicherheit etwas passendes finden...

bluesbear 13. Feb 2008 19:52

Re: Stringgridzelle einfärben aber den Text beibehalten
 
ungefähr so gehts:
Delphi-Quellcode:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; Col, Row: Integer;
  Rect: TRect; State: TGridDrawState);
begin
  if Row=3 then begin
    StringGrid1.Canvas.Brush.Color := clSilver;
    StringGrid1.Canvas.FillRect(Rect);
    StringGrid1.Canvas.Textout(Rect.Left, Rect.Top, StringGrid1.Cells[Col, Row]);
  end;
end;

taaktaak 13. Feb 2008 20:05

Re: Stringgridzelle einfärben aber den Text beibehalten
 
Jooo, aber bedenke, dass hier auch gezeichnet wird, wenn der Focus auf der Zelle/Zeile ist - auch das muss der Anwender jetzt selber erledigen...

bluesbear 13. Feb 2008 20:25

Re: Stringgridzelle einfärben aber den Text beibehalten
 
Zitat:

Zitat von taaktaak
Jooo, aber bedenke (...)

joh, deshalb steht da "ungefähr". Mit dem Beispiel sieht man schon mal was. Manchmal soll die Färbung ja auch bleiben, auch wenn das die aktive Zelle ist, oder so. K.a. was da gewünscht ist...

taaktaak 13. Feb 2008 20:34

Re: Stringgridzelle einfärben aber den Text beibehalten
 
Hallo Bluesbear,
das ist als zusätzlcher Hinweis für R34DM3 gedacht und sollte in KEINER Weise eine Kritik in deine Richtung sein! Ich habe das "ungefähr" schon erkannt
:cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz