Ein JFormattedField rechtsbündig ausrichten

Status
Nicht offen für weitere Antworten.

joe89

Aktives Mitglied
In einem JFormattedTextField werden Integerzahlen rechtsbündig ausgerichtet.

Code:
<...>
sleKnr.setColumns(3); 
sleKnr.setHorizontalAlignment(JTextField.RIGHT);
<..>

Falls die darzustellende Zahl weniger als 3 Stellen hat verbleibt immer ein kleiner Rand zum rechten Ende des Eingabefeldes. Werden genau 3 Stellen ausgegeben gibt es keinen Rand. Ich möchte die Zahlen aber rechtsbündig am rechten Ende des Feldes ausgeben.

Für dieses Feld wurde keine Grösse angegeben.

Wie ist dieses Verhalten zu erklären ?

Vielen Dank für eine Antwort

Joe89
 

Sky

Top Contributor
Zeig mal, wie Du das JFormattedTextField initialisierst (inkl. Formatzuweisung)
 

joe89

Aktives Mitglied
Hallo Sky,

ich habe eine neue Klasse erstellt, die von JFormattedTextField erbt.

Code:
package joeControl;

public class JoeFormattedFields extends JFormattedTextField implements FocusListener{
    
    public JoeFormattedFields(char maskSymbol,int AnzZeichen)
    {
       super();
      
       /* einen Focuslistener hinzufügen */
       addFocusListener(this);
       
       try
       {
       int i=0;
       char xmaske[] = new char[AnzZeichen];
       
       for(i=0; i<AnzZeichen;i++)
       {      
         xmaske[i]=maskSymbol;
       }
       
       MaskFormatter x = new MaskFormatter(new String(xmaske)); //maske);
       /* anwenden */
       x.install(this);
       }
       catch(Exception e)
       {}
    }
    
    /****** dieser Konstruktor wird aufgerufen ****/
    public JoeFormattedFields(String xmaske)
    {
        super();
        
        /* einen Focuslistener hinzufügen */
        addFocusListener(this);
        
        try
        {
        MaskFormatter x = new MaskFormatter(xmaske);
        /* anwenden */
        x.install(this);
        }
        catch(Exception e)
        {}
        }
    
    public void focusGained(FocusEvent e)
    {
        System.out.println("Focus bekommen");  
    }
    
    public void focusLost(FocusEvent e)
    {
        System.out.println("Focus abgegeben"); 
    }
    
    /* setzt Wert der Componente als String */
    public void setStringValue(String newText)
    {
      /* Länge des Textes wird von MaskFormatter berücksichtigt */
      this.setText(newText);  
    }
    
    /* gibt Wert der Componente als String zurück */
    public String getStringValue()
    {
      return this.getText();  
    }
    
    /* setzt Wert der Componente als Integer */
    public void setIntegerValue(int newInteger)
    {
      Integer i = new Integer(newInteger);
      /* Länge des Textes wird von MaskFormatter berücksichtigt */
      this.setText(i.toString());
    }
    
    /* gibt Wert der Componente als String zurück */
    public int getIntegerValue()
    {
      return Integer.parseInt(this.getText());  
    }
}

Wie bereits gesagt,klappt die Ausrichtung im wesentlichen, nur wird eben nicht ganz am rechten Rand ausgerichtet.

Gruss

Joe89
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M JTable einzelne Spalte rechtsbündig Java Basics - Anfänger-Themen 2
C Wert rechtsbündig einstellen? Java Basics - Anfänger-Themen 3
F String rechtsbündig Java Basics - Anfänger-Themen 2
T Text Rechtsbündig in jTextArea Java Basics - Anfänger-Themen 4
P Graphics2D.drawString: Zahlen rechtsbündig ausrichten? Java Basics - Anfänger-Themen 2
N Text im TextField rechtsbündig? Java Basics - Anfänger-Themen 2
O Jtextarea bzw jtextpane rechtsbündig oder blocksatz Java Basics - Anfänger-Themen 6
D Array im Raster ausrichten Java Basics - Anfänger-Themen 2
M JFrame automatisch ausrichten Java Basics - Anfänger-Themen 3
W Button ausrichten / Hintergrundbild Java Basics - Anfänger-Themen 9
R Frame Inhalt ausrichten Java Basics - Anfänger-Themen 5
S jpanel links oben ausrichten Java Basics - Anfänger-Themen 7
S Auf JButtonBar komponenten ausrichten, größe festlegen? Java Basics - Anfänger-Themen 5
W text in jspinner ausrichten Java Basics - Anfänger-Themen 2
M Strings links, rechts und centriert ausrichten Java Basics - Anfänger-Themen 12
B spinner ausrichten Java Basics - Anfänger-Themen 14
A Objekte pixelgenau ausrichten Java Basics - Anfänger-Themen 4
A JLabel ausrichten Java Basics - Anfänger-Themen 13
M JTextField Text ausrichten! Java Basics - Anfänger-Themen 4
A Komponenten im Panel ausrichten Java Basics - Anfänger-Themen 5
V Buttons richtig ausrichten Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben