[VC++] Farben in ComboBox schreiben

warcraft9105

Erfahrenes Mitglied
Hallo...
Wie kann ich Systemfarben in eine Combobox einlesen und hinterher auslesen und dann Hintergrundfarbe der Form auf den selektierten Eintrag setzen?

MfG, warcraft9105
 
Hi

Die System-Farben kannst du, wer hätte es gedacht :D, von der Klasse System.Drawing.SystemColors abfragen.
Da die einzelnen Farben nur als statisches Property existieren, musst du per Reflection über alle iterieren und diese einfach der ComboBox hinzufügen.
Beispiel in C# (untested):
C#:
Type t = typeof(SystemColors);
PropertyInfo[] infos = t.GetProperties(BindingFlags.Static);
foreach(PropertyInfo info in infos)
{
    comboBox.Add(info.GetValue(null, null));
}
Beim Abfragen der Farben kannst du das SelectedItem der ComboBox dann in ein Color-Objekt casten.

PS: Beispiel für Reflection mit C++ stehen in der MSDN. Mit dem oben gezeigten Beispiel weißt du aber, wo du schauen musst
 

Neue Beiträge

Zurück