Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   gleiche farben in tcolor abfangen (https://www.delphipraxis.net/69365-gleiche-farben-tcolor-abfangen.html)

track 14. Mai 2006 12:50


gleiche farben in tcolor abfangen
 
wir haben also eine auswahl auf dem formular
http://img107.imageshack.us/img107/4...benannt4tt.jpg

und eine konstante für dern hintergrund der canvas fläche!

die frage ist nun: wie fang ich es ab dass Mindestens eine der 2 Farben (Randfarbe und Füllfarbe) ist ungleich der Hintergrundfarbe der Zeichenfläche (einstellbar).
hab das so versucht aber irgendwie kalppt das nich wirklich

Delphi-Quellcode:
function ColorTest(PenColor, BrushColor : TColor):boolean;
begin
  if (PenColor = cHintergrundFarbe) and (BrushColor = cHintergrundFarbe) then
      ColorTest := true;
end;
und dann

Delphi-Quellcode:
If ColorTest(ClBox_Pen.Selected, ClBox_Back.Selected)= false then
   
     PB_Bild.Canvas.Pen.Color := ClBox_Pen.DefaultColorColor; //Randfarbe
     PB_Bild.Canvas.Brush.Color := ClBox_Back.DefaultColorColor; //Fullfarbe
der zeichnet zwar mit der standart eingestellten farbe, aber ich hätte es besser das er garnet zeichnen würde!
wäre es möglich?

MrKnogge 14. Mai 2006 12:55

Re: gleiche farben in tcolor abfangen
 
Natürlich ist das möglich, du zeichnest doch auf das Canvas !?

Oder hab ich da jetzt etwas falsch verstanden ?

gruss

track 14. Mai 2006 13:03

Re: gleiche farben in tcolor abfangen
 
nein das ist schon richtig, gezeichnet wird aufm canvas!
nun die frage wie?

MrKnogge 14. Mai 2006 13:05

Re: gleiche farben in tcolor abfangen
 
Ich dachte du zeichnest "von Hand".
Was zeichnest du denn ?
Zeig doch bitte mal ein bisschen Code.

gruss

Phistev 14. Mai 2006 13:16

Re: gleiche farben in tcolor abfangen
 
Delphi-Quellcode:
function ColorTest(PenColor, BrushColor : TColor):boolean;
begin
  Result:= (PenColor <> cHintergrundFarbe) or (BrushColor <> cHintergrundFarbe);
end;
überprüft, ob mindestens eine Farbe unterschiedlich ist. In der Prozedur zum Zeichnen dann einfach
Delphi-Quellcode:
if ColorTest(...) then begin
  //Zeichnen
end else ShowMessage('Mind. eine Farbe muss vom Hintergrund verschieden sein');

track 14. Mai 2006 13:30

Re: gleiche farben in tcolor abfangen
 
vielen dank das funktioniert :) :hello:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:11 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