Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: [Java] info su JTable

  1. #1

    [Java] info su JTable

    Salve raga , volevo chiedervi:

    come faccio a posizionare il testo al centro della cella, ovviamente ciò deve essere applicato a tutte le celle! grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [Java] info su JTable

    Originariamente inviato da fcorsa
    come faccio a posizionare il testo al centro della cella, ovviamente ciò deve essere applicato a tutte le celle!
    Devi agire sui "renderer". Innanzitutto quale table model usi? (serve solo per sapere quale Class viene restituito per le colonne).

    Una soluzione semplice: istanzi un DefaultTableCellRenderer e siccome è-un JLabel, usi setHorizontalAlignment() per impostargli l'allineamento.
    Il renderer lo puoi poi assegnare a colonne specifiche della tabella oppure in modo globale per la tabella associandolo ad una classe specifica con setDefaultRenderer() (la classe più generica è Object.class, se il table model ritorna questo).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Eccol il mio table model (è una tabella a 1 colonna):


    codice:
    class MyTableModel2 extends AbstractTableModel {
    		
    		private int numeroDiColonne = 1;
    		private ArrayList lista3=null;
    		private int count3;
    		public MyTableModel2(ArrayList lista2,int count) {
    			//lista delle specifiche mancanti(ArrayList di stringhe)
    			lista3=lista2;
    			//numero di specifiche mancanti contenuto nella lista
    			count3=count;
    		}
    //metodo che crea il nome della colonna 
    		public String getColumnName(int c){
    			 String nome = "Artwork Mancanti";
    			 return nome;
    		}
    //metodo che ritorna il numero di colonne che è = 1
    		public int getColumnCount() {
    			return numeroDiColonne;
    		}
    //metodo che ritorna il numero di righe della colonna che è uguale al numero di specifiche mancanti nella lista
    		public int getRowCount() {
    			return count3;
    		}
    		//metodo che aggiunge gli elementi alle celle(cioe le stringhe)
    		//indice colonna non viene inserito perche e a una sola colonna
    		public Object getValueAt(int indiceRiga, int indiceColonna) {
    			String riga =""+lista3.get(indiceRiga);
    			return riga;
    		}	
    	}

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fcorsa
    Eccol il mio table model
    Va bene, se non fai l'override di getColumnClass(), la implementazione in AbstractTableModel ritorna sempre Object.class.
    Quindi può certamente valere quanto ho detto prima.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    ma a setHorizontalAlignment() che intero metto?

  6. #6
    scusa dovevo mettere 0.

    ok , funziona, ma per mettere anche l'intestazione della colonna al centro?

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fcorsa
    scusa dovevo mettere 0.
    Non mettere un literal numerico .... la documentazione di setHorizontalAlignment parla chiaramente!! "alignment - One of the following constants defined in SwingConstants: LEFT, CENTER [....]"

    Originariamente inviato da fcorsa
    ma per mettere anche l'intestazione della colonna al centro?
    Ma il testo dell'header è già centrato mi sembra ....
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #8
    a me no! è affiancato a sinistra!

  9. #9
    setHorizontalAllignement() vuole l'intero!

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da fcorsa
    a me no! è affiancato a sinistra!
    Mi sembra strano ....

    Originariamente inviato da fcorsa
    setHorizontalAllignement() vuole l'intero!
    E allora?? SwingConstants.CENTER è una costante di tipo int .... quale è il problema??
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.