ich glaube, ich stehe gerade auf dem Schlauch - zum Glück ist heute Freitag…
Bin gerade dabei eine JComboBox in eine Gui einzubauen, die einen speziellen Font nutzen soll.
So weit so gut, leider scheint dieses Markierungshäckchen im Font nicht vorhanden zu sein, so daß nun ein Quadrat dargestellt wird
Ein Bild sagt mehr als 1000 Worte:
Bestimmt eine total blöde Frage, aber wie kann ich diesen Selection-Marker (Häckchen) ‚abschalten‘?
was ein Selection-Marker ist, ist mir unbekannt, auch was dein Bild darstellt,
vielleicht wird es klarer, wenn du Code dazu postest oder dich an ein Standard-Beispiel wie http://java-tutorial.org/jcombobox.html
hälts, ergänzt um deine Font oder was immer alles nötig ist,
wie sieht mit diesem Code, dieser ComboBox ein Screenshot mit deinem Problem aus?
meinst du das Dreieck, auf das man klicken muss um die ComboBox aufzuklappen?
mit der Liste der Items hat das ja nicht direkt zu tun…, dein Bild ist überhaupt nicht als ComboBox erkennbar
welche Werte sind im Model deiner ComboBox, 1-4 und noch ein fünftes Default-Element?
Danke für Deinen Hinweis - ja, es ist der 13. :rolleyes:
Ich nutze tatsächlich nur eine ganz simple JComboBox, aber das Problem scheint wohl das OS zu sein.
Da ich gerade auf OSX entwickle, sieht das Beispiel von Dir so aus:
Es ist ein kleines Häckchen vor dem selektierten Item zu sehen (das meinte ich mit ‘Selection-Marker’).
Setze ich nun den vorgegebenen Font ein, sieht das Ganze so aus:
Ein schneller Test auf Windows 7 ergab dann das ‘überraschende’ Ergebnis, daß es dort ohne Probleme funktioniert :twisted:
Da das Problem OS-abhängig zu sein scheint, wird mir wohl nur ein Workaround übrig bleiben (Default-Font / alternativer (vollständiger) Font).
…es sei denn es hat noch jemand eine geniale Idee :idea:
Ach so, den Beispielcode hatte ich übrigens nur um folgende Methode erweitert und durch
bundeslandAuswahl.setFont(createFont());
aktiviert:
static Font createFont()
{
Font ttfreal = null;
try
{
//InputStream is = JComboBoxBeispiel.class.getResourceAsStream("./erasdust.ttf");
InputStream is = new FileInputStream(new File("erasdust.ttf"));
Font ttfbase = Font.createFont(Font.TRUETYPE_FONT, is);
ttfreal = ttfbase.deriveFont(Font.PLAIN, 20);
GraphicsEnvironment.getLocalGraphicsEnvironment().registerFont(ttfreal);
}
catch (FontFormatException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
return ttfreal;
}
du könntest dem Font File ein Häckchen spendieren
oder anderes L&F nutzen
oder halt wenns schön javamäßig haben willst wie schon erwähnt nen passenden Renderer schreiben ohne das Häckchen
Bedenke eines: unsere Kunden hätten dann angerufen so frei nach dem Motto “Was habt ihr wieder gemacht, im Pulldownmenü habe ich vorm ausgewählten Eintrag immer ein Häckchen, jetzt ist es weg!!! Machts anders!!!111elf”… /whineende
Das Gute ist, der Großteil der User nutzt Windoof in verschiedenen Variationen, denen wird es also nicht auffallen
Die Entwicklung läuft meist unter Linux & Win - nur aus Kompatibilitätsgründen bin ich heute mal wieder auf den Mac gegangen und dann sowas…