Einzelnen Beitrag anzeigen

DevilsCamp
(Gast)

n/a Beiträge
 
#1

Beliebige Fläche mit einer Farbe füllen

  Alt 21. Dez 2004, 09:51
Ich habe eine Klasse, mit der ich wie bei einem Stringgrid Daten tabellenförmig darstellen kann.

Zusätzlich ist es aber möglich, eine komplette Spalte so einzurichten, dass es möglich ist, Daten per ComboBox einen Wert einzustellen.
Bisher ist es allerdings so, dass es auf den ersten Blick nicht möglich ist zu erkennen, ob es sich nun um ein normales Editierfeld oder um eine Combobox handelt. Daher wollte ich die Klasse entsprechend umschreiben, dass es ein Rechteck mit ienem kleinen Dreick anzeigt.

ich habe folgenden Code hinzugefügt:
Delphi-Quellcode:
            Brush.Style := bsSolid;
            Brush.Color := clBtnFace;
            r1:= getButtonRectFromCellRect( DrawRect);
            FillRect(r1);
            Brush.Color := clGray;
            FrameRect(r1);

            Brush.Color := clBlack;
            i1 := r1.Left+(r1.Right-r1.Left) div 3;
            i2 := r1.Top+(r1.Bottom-r1.Top) div 3;
            MoveTo(i1, i2);
            i1 := r1.Right-(r1.Right-r1.Left) div 3;
            LineTo(i1, i2);
            i1 := r1.Left+(r1.Right-r1.Left) div 2;
            i2 := r1.Bottom-(r1.Bottom-r1.Top) div 3;
            LineTo(i1, i2);
            i1 := r1.Left+(r1.Right-r1.Left) div 3;
            i2 := r1.Top+(r1.Bottom-r1.Top) div 3;
            LineTo(i1, i2);
es wird auch schon das Feld mit einem Dreieck angezeigt, allerdings ist das Dreieck noch nicht gefüllt.
Gibt es eine Möglichkeit, dies zu realisieren? Also quasi als eine Prozedur FillDreieck(MittelPunk: TPoint; FuellFarbe, GrenzFarbe: TColor)?
  Mit Zitat antworten Zitat