Avatar billede mr_green Nybegynder
04. oktober 2002 - 07:50 Der er 7 kommentarer

Stringgrid række farve og tekst

Jeg har følgende procedure:

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
begin
  if aRow = 1 then
  with StringGrid1.Canvas do
  begin
    Brush.Color := clRed;
    FillRect(Rect);
  end;
end;

Det virker osse fint problemet er bare at hele rækken bliver rød og man kan ikke se teksten hvordan får jeg gjort teksten synlig!?

....Christian
Avatar billede assassin Juniormester
04. oktober 2002 - 08:11 #1
Hvad med Brush.Font.Color := clBlack ??

Jeg har ikke lige delphi ved hånden, så det er ikke testet....
Avatar billede mr_green Nybegynder
04. oktober 2002 - 08:25 #2
Den kom jeg osse lige på men det hjælper ikke, jeg fylder en række ind i grid'en af gangen alle andre rækker har hvid baggrund og sort tekst på nær den jeg gør rød, der er det hele bare rødt...?
Avatar billede speedy Nybegynder
04. oktober 2002 - 09:09 #3
Når man begynder selv at tegne hver celle bliver man nødt til at gøre det hele selv. Altså du skal selv ind og tegne teksten i cellen også.

Til dette kan du bruge funktionen TextOut. Teksten der skal skrives kan du få at vide med StringGrid1.Cells[ACol, ARow]

/SpEeDy
Avatar billede mr_green Nybegynder
04. oktober 2002 - 09:45 #4
Hvor finder jeg TextOut?
Avatar billede speedy Nybegynder
04. oktober 2002 - 09:47 #5
Det er bare :

StringGrid1.Canvas.TextOut

/SpEeDy
Avatar billede mr_green Nybegynder
04. oktober 2002 - 10:02 #6
Hmmm mystisk det er lige meget hvad jeg fylder ind i den så smider den kun ind i felt 0,0 koden ser nu således ud:

if aRow = 1 then
  with StringGrid1.Canvas do
  begin
    Brush.Color := clRed;
    FillRect(Rect);
    TextOut(1, 1, 'test');
  end;
Avatar billede speedy Nybegynder
04. oktober 2002 - 10:18 #7
Det er fordi du ikke skal bruge 1, 1 men i stedet Rect.Left og Rect.Top

det kan jo så blive nødvendigt at lægge 1 eller 2 til Rect.Left og Rect.Top så teksten ikke starter HELT oppe i hjørnet.

/SpEeDy
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester