JSpinner Font ändern

meister-g

Bekanntes Mitglied
Merkwürdig, dass es zu diesem Thema quasi keine Infos im Netz gibt (oder ich bin unfähig zu suchen)

Ich würde gerne den Font eines JSpinners ändern.

Der Aufruf setFont() des Spinners, des Editors (getEditor()->NumberEditor in meinem Fall) und des Textfeldes (editor.getTextField() -> JFormattedTextField) bewirkt nichts.

Swing [Archive] - Change Font JSpinner?

gibt auch keine weiteren Infos, nur, dass es sich wohl um eine fies verschachtelte componente handelt.

getComponent() des textfeldes liefert aber keine weiteren Komponenten.

Wie löse ich das Problem?
Falls es eine Lösugn ist mit get get get cast usw... gibt es evtl auch eine elegantere?
 

Ebenius

Top Contributor
Dass Du dazu nichts konkretes findest, ergibt sich aus dem Aufbau der Komponente. Ein JSpinner ist ein Teil mit zwei Buttons (up/down) und einem Editor (der zum Beispiel ein Textfeld zur Verfügung stellt). Ein JSpinner kann aber auch einen ganz anderen Editor haben; zum Beispiel einen der zwei Textfelder hat. Deshalb kann der JSpinner mit der Schriftart des Editors nichts zu tun haben, er weiß nämlich nicht, was der Editor kann und was nicht.

Wenn Du in einem normalen JSpinner (Number, Date, List ohne Spezialitäten) die Schrift ändern willst, dann machst Du's in etwa so:
Java:
final JSpinner.DefaultEditor editor = (JSpinner.DefaultEditor) spinner.getEditor();
final JTextComponent textField = editor.getTextField();
textField.setFont(myFont);
Ebenius
 

meister-g

Bekanntes Mitglied
Das es alle möglichen Editoren gibt ist mir klar, aber ich schrubte ja auch, dass ich einen NumberEditor einsetze.

Aber auch nach Einsatz deines Codeschnipsels bleibt der (musste fürs Geschlecht nachschauen :-D) Font gleich.
 

Ebenius

Top Contributor
Aber auch nach Einsatz deines Codeschnipsels bleibt der (musste fürs Geschlecht nachschauen :-D) Font gleich.
Dann machst Du was falsch:
Java:
/* $Id$ */

/* Copyright 2010 Sebastian Haufe

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       [url]http://www.apache.org/licenses/LICENSE-2.0[/url]

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License. */

package com.ebenius;

import java.awt.BorderLayout;
import java.awt.Font;
import java.awt.geom.AffineTransform;

import javax.swing.*;
import javax.swing.JSpinner.DefaultEditor;

public class JSpinnerFontTest {

  public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {

      public void run() {
        createAndShowGui();
      }
    });
  }

  static void createAndShowGui() {
    final JSpinner spinner =
          new JSpinner(new SpinnerNumberModel(123, 0, 1000, 1));
    final DefaultEditor edi = (DefaultEditor) spinner.getEditor();
    final JFormattedTextField tf = edi.getTextField();
    final AffineTransform trans = AffineTransform.getShearInstance(0.9, 0);
    trans.scale(30, 30);
    trans.translate(-3, 4);
    trans.rotate(Math.toRadians(-15));
    tf.setFont(edi.getFont().deriveFont(Font.BOLD, trans));

    final JPanel contentPane = new JPanel(new BorderLayout(6, 6));
    contentPane.add(spinner);

    final JFrame f = new JFrame("Test Frame: JSpinnerFontTest"); //$NON-NLS-1$
    f.setContentPane(contentPane);
    f.setSize(640, 480);
    f.setLocationRelativeTo(null);
    f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    f.setVisible(true);
  }
}
... sieht so aus:
attachment.php

:-D

Ebenius
 

meister-g

Bekanntes Mitglied
ja.. sorry. erst vernünftig debuggen, dann fragen.

aber war ja gut, sonst wären deine transformationsergüsse nicht entstanden :-D
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D TAB Taste innerhalb eines JSpinner AWT, Swing, JavaFX & SWT 2
C JSpinner AWT, Swing, JavaFX & SWT 6
C Hilfe bei JSpinner und JList AWT, Swing, JavaFX & SWT 1
K Swing JSpinner mit NULL AWT, Swing, JavaFX & SWT 3
V LookAndFeel JSpinner Hintergrund Farbe mit Nimbus LaF AWT, Swing, JavaFX & SWT 0
R Int aus JSpinner auslesen und Tabelle erstellen AWT, Swing, JavaFX & SWT 3
K JSpinner in passender Breite erstellen oder automatisch anpassen AWT, Swing, JavaFX & SWT 2
D JCheckbox und JSpinner in JTable AWT, Swing, JavaFX & SWT 9
M JSpinner, setValue AWT, Swing, JavaFX & SWT 7
N Swing JSpinner mit Datum aber ohne Uhrzeit AWT, Swing, JavaFX & SWT 2
J Swing JSpinner mit zusätzlichem Text? AWT, Swing, JavaFX & SWT 2
B JSpinner ChangeEvent erzwingen AWT, Swing, JavaFX & SWT 6
B JSpinner Textgröße anpassen AWT, Swing, JavaFX & SWT 2
B JSpinner welche Taste? AWT, Swing, JavaFX & SWT 5
B JSpinner Enter AWT, Swing, JavaFX & SWT 7
G JSpinner ohne Tausendertrennzeichen AWT, Swing, JavaFX & SWT 5
N Wertanzeige mittels JSpinner AWT, Swing, JavaFX & SWT 3
S JSpinner AWT, Swing, JavaFX & SWT 11
G Swing JSpinner nur mit Buttons ändern AWT, Swing, JavaFX & SWT 8
T JSpinner in JTable: Problem beim Auslesen, funktioniert erst beim Zellwechsel AWT, Swing, JavaFX & SWT 7
T Swing JSpinner in JTable AWT, Swing, JavaFX & SWT 9
C Größe von JSpinner fixieren AWT, Swing, JavaFX & SWT 4
J JSpinner + SpinnerNumberModel int auslesen AWT, Swing, JavaFX & SWT 2
C Zwei JSpinner mit dem gleichen Wert AWT, Swing, JavaFX & SWT 2
Eldorado Swing Popup-Menü mit Jspinner AWT, Swing, JavaFX & SWT 4
X Den Wert von JSpinner setzen ohne Event AWT, Swing, JavaFX & SWT 3
M JSpinner als TableCellEditor; buttons nur bei fokus sichtbar AWT, Swing, JavaFX & SWT 14
Spin JSpinner AWT, Swing, JavaFX & SWT 10
T JSpinner, 3 JSpinner aber nur ein SpinnerDateModel AWT, Swing, JavaFX & SWT 7
S JSpinner der Floats anzeigt..? AWT, Swing, JavaFX & SWT 4
D Swing Eigene Komponente mit JSpinner AWT, Swing, JavaFX & SWT 4
elitebiber Swing JSpinner und die Zeit AWT, Swing, JavaFX & SWT 11
T JSpinner Problem AWT, Swing, JavaFX & SWT 6
G JSpinner umdrehen? AWT, Swing, JavaFX & SWT 2
G JSpinner und ChangeListener AWT, Swing, JavaFX & SWT 3
K JSpinner - Model <-> View, unterschiedliche Werte AWT, Swing, JavaFX & SWT 9
Tom299 JSpinner nur Zeitangabe AWT, Swing, JavaFX & SWT 13
G JSpinner Frage AWT, Swing, JavaFX & SWT 2
H JSpinner mit Kalenderwoche und Jahr AWT, Swing, JavaFX & SWT 6
M JSpinner in einer JTable? AWT, Swing, JavaFX & SWT 5
P Frage zu JSpinner AWT, Swing, JavaFX & SWT 3
B JTextFiled, JCheckBox, JSpinner Eigenschaften speichern AWT, Swing, JavaFX & SWT 2
R Konvertieren von Werten im JSpinner AWT, Swing, JavaFX & SWT 2
K JSpinner Werte verschwinden bei Panel Wechsel AWT, Swing, JavaFX & SWT 2
B JSpinner passt optisch nicht zu anderen Komponenten AWT, Swing, JavaFX & SWT 2
D JSpinner ohne Edit Möglichkeit AWT, Swing, JavaFX & SWT 5
J JSpinner mit zahlen AWT, Swing, JavaFX & SWT 10
P JSpinner Objekt anstatt Zahlen sollen man Namen auswählen AWT, Swing, JavaFX & SWT 2
L JSpinner + addRow() AWT, Swing, JavaFX & SWT 3
M .txt unter Verwendung von JSpinner in Textfeld schreiben AWT, Swing, JavaFX & SWT 4
N JDK1.4- Überladen d. Methoden getValue setValue von JSpinner AWT, Swing, JavaFX & SWT 2
S JSpinner: Editieren einschränken AWT, Swing, JavaFX & SWT 4
F JSpinner FocusListener AWT, Swing, JavaFX & SWT 2
W JSpinner: Button vertikal anordnen AWT, Swing, JavaFX & SWT 2
R JSpinner rotieren AWT, Swing, JavaFX & SWT 6
A JSpinner in Dialogbox integrieren? AWT, Swing, JavaFX & SWT 3
D JSPinner Größe verändern - setSize() funktioniert nicht AWT, Swing, JavaFX & SWT 7
javasdann JSpinner & KeyListener. AWT, Swing, JavaFX & SWT 8
G jspinner schrittweite in Abhängigkeit vom aktuellen Wert AWT, Swing, JavaFX & SWT 3
G JSpinner bringt bei anklicken eine CastException AWT, Swing, JavaFX & SWT 5
flashfactor Un mal ein Problem mit JSpinner AWT, Swing, JavaFX & SWT 7
I jSpinner.getValue() AWT, Swing, JavaFX & SWT 2
G JSpinner für Datumsanzeige AWT, Swing, JavaFX & SWT 2
0 Ist "sequence.fallback" aus den font.properties zur Laufzeit änderbar AWT, Swing, JavaFX & SWT 0
I Anderes (schlechteres) Font-Rendering in OpenJDK 8 AWT, Swing, JavaFX & SWT 21
Splayfer Custom Font in AttributedString Java AWT, Swing, JavaFX & SWT 4
L JavaFX Eigene Font benutzen AWT, Swing, JavaFX & SWT 6
B AWT Font Größenverhältnisse AWT, Swing, JavaFX & SWT 2
Blender3D Problem mit € Symbol Font Gotham Windows 10 Swing AWT, Swing, JavaFX & SWT 11
L Font für Dashboard AWT, Swing, JavaFX & SWT 3
Tronert JavaFX Fehler beim Ändern der font-weight AWT, Swing, JavaFX & SWT 7
S Swing JColorChooser Font ändern AWT, Swing, JavaFX & SWT 2
N JLabel HTML mit custom Font AWT, Swing, JavaFX & SWT 0
A AWT TTF-Datei zu Font-Objekt finden? AWT, Swing, JavaFX & SWT 5
Y Globale Font-Color definieren AWT, Swing, JavaFX & SWT 5
F java.awt.Font - ist das wirklich alles? AWT, Swing, JavaFX & SWT 3
Luk10 Ungewollte Unicode Characters im Font AWT, Swing, JavaFX & SWT 5
S Font laden, Wort zeichnen und animieren..? AWT, Swing, JavaFX & SWT 2
M Font Size in FormsEditor AWT, Swing, JavaFX & SWT 2
F Font in JTable setzen AWT, Swing, JavaFX & SWT 7
1 Font ändern AWT, Swing, JavaFX & SWT 5
I Textbreite von Font inklusive Tabs ermitteln AWT, Swing, JavaFX & SWT 4
T Swing Font für alle Komponenten ändern AWT, Swing, JavaFX & SWT 2
Dit_ Font durchgestrichen AWT, Swing, JavaFX & SWT 6
B Welche Font Family ist vorhanden? AWT, Swing, JavaFX & SWT 3
N Swing JEditorPane mit Farbe und Font AWT, Swing, JavaFX & SWT 2
G Frame,Font,Standard,Schriftart,JFrame AWT, Swing, JavaFX & SWT 3
H anderes font in textarea AWT, Swing, JavaFX & SWT 2
Schandro Den größten passenden java.awt.Font zu einem Rectangle berechnen AWT, Swing, JavaFX & SWT 2
D Font laden AWT, Swing, JavaFX & SWT 2
T Font mit Border AWT, Swing, JavaFX & SWT 7
Fu3L Wie Schriftfarbe und Font global setzen? AWT, Swing, JavaFX & SWT 5
J Font Änderung nach Editorwechsel? AWT, Swing, JavaFX & SWT 3
A Font: Ist Schriftart überall verfügbar? AWT, Swing, JavaFX & SWT 4
I font-größe ermitteln AWT, Swing, JavaFX & SWT 4
S jTable Font einer Zelle ändern AWT, Swing, JavaFX & SWT 5
StephenKing Font-Größe in JTextField normalisieren AWT, Swing, JavaFX & SWT 6
DEvent Standard Font-Auswahl-Dialog? AWT, Swing, JavaFX & SWT 15
I GUI - Font und Labelklick AWT, Swing, JavaFX & SWT 6
S JTree - Renderer - Font AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben