Does the text in Swing components have a default font? In particular, what about tab labels on JTabbedPane
s?
I\'m working on a mock-up of a GUI made wi
It depends on the Look and Feel. If it's an application you've written, get the values from UIManager.getDefaults().getFont("TabbedPane.font")
Based on the answer of Reverend Gonzo, this piece of code lets you know what keys are in the UIDefaults. As the keys are self-explanatory, you know what key you can use. I had to know the key for the JTextField font, for example, and could only find it this way.
Set<Object> keys = UIManager.getDefaults().keySet();
for (Object key : keys) {
if (key instanceof String && ((String) key).contains("font")) {
System.out.println(key + "=" + UIManager.getDefaults().get(key));
}
}
If you're looking for a font, in your case, just cast the key to a String and check whether it contains the word "font". This way you narrow the set of keys you have potential interest for.
I got a list
And thus you would need to pick TabbedPane.font.
It looks like it's Arial. That's what Identifont tells me and it looks right.
The UIManager Defaults shows what the values are for all properties for all components (including "TabbedPane.font").
The Java GUI default font is "Helvetica", bold size 9, color gray.
It may depend on the 'Look and Feel' you are using, but for me Swing's default font is
DejaVu Sans - Plain
For most components the font size defaults to around 12 or 13