Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Farbe in ColorBox ereiteren (https://www.delphipraxis.net/160042-farbe-colorbox-ereiteren.html)

thomas2009 25. Apr 2011 13:34

Farbe in ColorBox ereiteren
 
Hi

ich habe nicht soviel Farben in ColorBox
Wie kann ich weiteren Farbe über ColorBox aufrufen, um die Möglichkeit für den Anwender zu geben, eine beliebige Farbe aus der Farbeintabelle zu wählen ?
Delphi-Quellcode:
  object ColorBox1: TColorBox
    Left = 43
    Top = 17
    Width = 156
    Height = 22
    Selected = clBlue
    Style = [cbStandardColors, cbExtendedColors, cbSystemColors, cbIncludeNone, cbIncludeDefault, cbCustomColor, cbPrettyNames]
    ItemHeight = 16
    TabOrder = 0
  end

nuclearping 25. Apr 2011 15:11

AW: Farbe in ColorBox ereiteren
 
TColorBox ist eine erweiterte TComboBox. Also kannst du mit ColorBox1.AddObject('Name der Farbe', TObject(ABGR_Farbwert_als_Integer)) eine beliebige Farbe hinzufügen.

Wenn der Benutzer frei wählen soll, füge per ColorBox1.Items.Add('Eigene Farbe') einen String-Eintrag hinzu, wo du einen TColorDialog aufrufst, wenn dieser Eintrag gewählt wird.

thomas2009 25. Apr 2011 16:23

AW: Farbe in ColorBox ereiteren
 
In OnFormCreate lege ich eine neue Farbe
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
ColorBox1.Items.Add('Mehr Farben');
end;
dann möchte ich eine neue Farbe von einer Tabelle laden:
Delphi-Quellcode:
procedure TForm1.ColorBox1Change(Sender: TObject);
begin
IF ColorBox1.ItemIndex=ColorBox1.Items.Count-1 THEN begin
ColorDialog1.Execute;
ColorBox1.Colors[colorbox1.ItemIndex]:= ColorDialog1.Color;// Fehler !!!
...
end;
end;

s.h.a.r.k 25. Apr 2011 21:37

AW: Farbe in ColorBox ereiteren
 
Was ist an der Fehlermeldung denn nicht verständlich:
Code:
[DCC Fehler] Unit1.pas(29): E2129 Einer Nur-Lesen Eigenschaft kann kein Wert zugewiesen werden
Schau dir echt mal die Grundlagen an!

Du musst den Weg über die Eigenschaft Items und deren Untereigenschaft Objects gehen, dann klappt das ganze.

thomas2009 25. Apr 2011 22:59

AW: Farbe in ColorBox ereiteren
 
Du meinst villeicht:
Delphi-Quellcode:
IF ColorBox1.ItemIndex=ColorBox1.Items.Count-1 THEN begin
ColorDialog1.Execute;
ColorBox1.Selected:=ColorDialog1.Color;
end;
Aber es Funktioniert nicht immer richtig

s.h.a.r.k 25. Apr 2011 23:57

AW: Farbe in ColorBox ereiteren
 
Was versuchst du eigentlich zu machen? Einen Dialog anzeigen, bei dem der User irgendeinen Farbwert definieren kann und den dann in einer Tabelle suchen? Was ist denn das für eine Idee? Warum überlegst du dir nicht ein sinnvolles Verhalten, das dein Dialog ausführen soll und postest die Stelle deines Quelltextes, bei der es Probleme gibt.

Zu deinem Verhalten: Lern endlich mal, wie man Probleme sinnvoll löst und nicht gleich nach dem ersten Brute Force-Versuch hier postet. Das führt doch absolut zu nichts, außer, dass sich irgendwer mal meldet und dann die richtige Lösung postet. Was hast du dann gelernt? Null! Und Spass macht es auf die Dauer auch keinen mehr, jedes mal gegen eine Wand zu reden...


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