Archiv verlassen und diese Seite im Standarddesign anzeigen : Schriftfarbe in JComboBox ändern
Hallo *,
wie kann ich die Textfarbe in einer ComboBox ändern, dabei meine ich jetzt nicht die möglichen Auswahlwerte, sondern die Schriftfarbe des Items, das in dem Editierfeld angezeigt wird. Mittels myBox.setForeground(Color) werden "nur" die Auswahlwerte in der gewünschten Farbe dargestellt.
(Über das Model bin ich auch nicht weiter gekommen. )
Hat jemand dazu ein Tipp? :)
ins blaue geraten und nicht getestet:
combobox.getEditor().getEditorComponent().setForeg round( color );
Gruß
Hallo Cosh,
vielen Dank! Du hast mal so ins Blaue geschossen und es hat prima gefunzt. So kann ich wirklich den Text im Feld verändern, kann die Auswahlwerte aber in der Standardfarbe lassen. :) :)
Aber..., warum kann ich über das Objekt "getEditor" darauf zugreifen? :confused:
Hätte Jahre gedauert bis ich das gefunden hätte (wenn überhaupt...) :rolleyes:
das ist wohl ähnlich Deinem Table-Problem. In Java wurden viele Klassen so generisch wie möglich gehalten. Du kannst als Entwickler eine ganz andere Editier-Komponente für eine JCombobox setzen als die Standard-Komponente. Standardmässig ist das ein JTextField. Wenn Du mit der Maus in die Combobox klickst (und sie editierbar ist), wird im Hintergrund eine Instanz der Editor-Komponente angezeigt, in der Du nun etwas eintippen kannst. Das ist dann Dein Eingabefeld, welches Du in der Farbe ändern wolltest. Du könntest aber beispielsweise statt einem Texteingabefeld z.b. ein JSlider dort hinein setzen das bei einem Klick in die Combobox angezeigt wird. Du kannst eigentlich alles machen... :)
Ahaa... ich glaube ich habe jetzt verstanden wie sich die Komponenten zusammen setzen bzw. wie sie aufgebaut sind. :)
Ich danke dir :)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.