AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Panelschrägkanten farbig? + Frage zu DrawGrid
Thema durchsuchen
Ansicht
Themen-Optionen

Panelschrägkanten farbig? + Frage zu DrawGrid

Ein Thema von peace · begonnen am 29. Sep 2007 · letzter Beitrag vom 30. Sep 2007
Antwort Antwort
peace

Registriert seit: 1. Apr 2007
2 Beiträge
 
#1

Panelschrägkanten farbig? + Frage zu DrawGrid

  Alt 29. Sep 2007, 22:55
Gibt es irgendeine Eigenschaft von Panel die es mir erlaubt die Farbe der Schrägkante zu ändern?

zusätzlich: Wie kann man bei DrawGrid einzelne Felder ansprechen und ihre Farbe ändern?

mfg peace
  Mit Zitat antworten Zitat
blackdrake

Registriert seit: 21. Aug 2003
Ort: Bammental
618 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: Panelschrägkanten farbig? + Frage zu DrawGrid

  Alt 29. Sep 2007, 23:20
Hallo und willkommen bei DP.

Eine solche Eigenschaft kenne ich nicht.

Du hast 2 Möglichkeiten

a) Du könntest es mit OwnerDraw selbst zeichnen
b) Du suchst nach einer Drittanbieter-VCL (solltest du zuerst tun)

Eine gute Seite, wo man viele VCLs findet ist www.torry.net -> VCL.

Bei DrawGrid müsstest du auch mit OwnerDraw arbeiten können, um so einzelne Bereiche in anderer Farbe zeichnen zu können.

Gruß
blackdrake
Daniel Marschall
  Mit Zitat antworten Zitat
Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#3

Re: Panelschrägkanten farbig? + Frage zu DrawGrid

  Alt 30. Sep 2007, 01:14
Zitat von peace:
Gibt es irgendeine Eigenschaft von Panel die es mir erlaubt die Farbe der Schrägkante zu ändern?

zusätzlich: Wie kann man bei DrawGrid einzelne Felder ansprechen und ihre Farbe ändern?

mfg peace
Bei einem TDrawGrid must du ja die Zelle sowieso in der Ereignisroutine OnDrawCell selbst zeichnen - da kannst du machen was du willst. Die Zellenadresse wird ja als Parameter übergeben. Das sieht z.B. so aus:

Delphi-Quellcode:
procedure TBLMainForm.SG_OverviewDrawCell (Sender: TObject; ACol,
  ARow: Integer; Rect: TRect; State: TGridDrawState);
var CSVal : integer;
    CSText : string[16];
    tw,th,tx,ty : integer;
begin
if (ACol = 3) and (ARow > 0) then
  with TStringGrid(Sender).Canvas do
    begin
    Brush.Color := clWindow;
    FillRect (Rect);
    TryStrToInt (TStringGrid(Sender).Cells [ACol,ARow],CSVal);
    case CSVal of
      1 : begin Font.Color := clRed; CSText := 'offline'; end;
      2 : begin Font.Color := clGreen; CSText := 'online'; end;
      3 : begin Font.Color := clGreen; CSText := 'Projekt'; end;
      else begin Font.Color := clBlack; CSText := 'inaktiv'; end;
      end;
    tw := TextWidth (CSText);
    th := TextHeight (CSText);
    tx := (Rect.right - Rect.Left - tw) div 2;
    ty := (Rect.bottom - Rect.Top - th) div 2;
    TextRect (Rect,Rect.Left + tx,Rect.top + ty,CSText);
    end;
if (ACol = 4) and (ARow > 0) then
  {...}
(in der 3. Spalte wird statt des Zellinhalts 0..3 ein farbiger Text angezeigt)

Gruss Reinhard
  Mit Zitat antworten Zitat
peace

Registriert seit: 1. Apr 2007
2 Beiträge
 
#4

Re: Panelschrägkanten farbig? + Frage zu DrawGrid

  Alt 30. Sep 2007, 15:15
Danke für die schnellen und hilfreichen Antworten. Die Variante mit OwnerDraw alles selbst zu zeichnen ist mir für mein Projekt zu aufwendig und ich müsste erst einmal schauen, wie das so richtig funktioniert. Ich suche erst einmal nach einer VCL und schaue danach inwieweit ich mit dem Codebeispiel mein DrawGrid-Problem lösen kann.

mfg peace
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz