2011-12-28 14 views

risposta

10

Un paio di costruttori JLabel accetta argomenti di allineamento orizzontale. Questi constants sono ereditati da SwingConstants.

+0

Sì, è giusto. Ma diciamo che ho 100 JLabels. Quando li allineo correttamente con il costruttore, e decido di cambiare l'allineamento a sinistra, dovrò farlo cento volte a mano. C'è un modo per allinearli tutti con una sola mossa dal livello di layout manager? –

+0

Se non si desidera incapsulare tale logica, utilizzare ['setAlignmentY'] (http://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html#setAlignmentY%28float%29) metodo. È così che un contenitore può impostare l'allineamento orizzontale di ogni istanza di 'JComponent' (ad esempio un' JLabel'). – mre

+0

@Non puoi creare una classe o un vuoto con parametri che restituiscono JLabel, puoi usare SwingConstant, JLabel # possition, o usando Html <= 3.2 +1 – mKorbel

22

@Noran In risposta al tuo commento sulla risposta di @ mre, è possibile inizializzare tutti i JLabel in un array. Quindi, tutto quello che dovresti fare è scorrere l'array e impostare l'allineamento in questo modo.

for (JLabel label: arrayOfJLabels) { 
    label.setHorizontalAlignment(SwingConstants.LEFT); 
} 
+0

Questa dovrebbe essere la risposta corretta. –

1

Ho letto la tua domanda e ho un suggerimento. Ci sono alcuni metodi per soddisfare i tuoi requisiti. Dal momento che lei non ha citato l'esigenza esatta, posso darvi un semplice esempio se ho capito bene:

//create a JLabel and name it as jLabel2 
javax.swing.JLabel jLabel2 = new javax.swing.JLabel(); 
jLabel2.setText("Dehans Label"); 
jLabel2.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT); 

prega di fare riferimento seguendo metodi @JLabel classe JavaSE API attraverso seguenti link:

+0

È preferibile collegarsi all'ultima versione di JavaDocs. Ho modificato la risposta in modo che punti a J2SE 7. Per suggerimenti su come ottenere un collegamento agli ultimi documenti, vedere [punto 2 dei vantaggi] (http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7090875) . –