Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Java] Allineamento intestazione colonne tabelle

    Salve raga

    dovrei allineare l'header di 2 colonne di una tabella

    Tramite il seguente codice

    codice:
    javax.swing.table.TableCellRenderer rendererFromHeader = tabella.getTableHeader().getDefaultRenderer();
    javax.swing.JLabel headerLabel = (javax.swing.JLabel) rendererFromHeader;
    headerLabel.setHorizontalAlignment(javax.swing.JLabel.CENTER);
    vengono allineate tutte le colonne ma vorrei io specificare quale allineare...

    Come potrei ovviare?

    Thanks

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Evidentemente esiste una sola istanza di Renderer per l'header della tabella (quello che viene chiamato "default renderer"). Modificando quell'unica istanza, la modifica viene riflessa su tutte le colonne (visto che tutte condividono quella stessa istanza).

    Come fare? Hai due possibilità:

    1) Creare un renderer che tenga conto della colonna per il suo comportamento e assegnarlo come nuovo default renderer

    codice:
    tabella.getTableHeader().setDefaultRenderer( new TuoRenderer() );
    2) Specificare un nuovo renderer per la singola colonna che ti serve

    codice:
    tabella.getColumn(colonna).setHeaderRenderer( new TuoRenderer() );
    Scegli tu.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Facendo così però perderei l'aspetto grafico di default giusto?

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Originariamente inviato da Fire Fox II
    Facendo così però perderei l'aspetto grafico di default giusto?
    Prova, ma non credo. Se estendi DefaultTableCellRenderer non dovresti avere problemi.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.