2013-07-14 18 views
52

ho dichiarato la mia JTable come:JTable, colonna disabilita l'utente trascina

data_table = new JTable(info, header) { 
    @Override 
    public boolean isCellEditable(int row, int column) { 
     return false; 
    } 
}; 

Ma ho visto che in fase di esecuzione è possibile trascinare le colonne con il mouse. Come posso disabilitare?

+9

Questa domanda non deve essere contrassegnata come duplicata. L'altro parla di disabilitare _a single_ column. Si tratta di disabilitare tutte le colonne. –

+3

Questa NON è una domanda duplicata. – Boltimuss

+2

Questa non è una domanda duplicata. –

risposta

103

data_table.getTableHeader().setReorderingAllowed(false); dovrebbe fare il lavoro, a meno che non si intenda che l'utente possa ridimensionare le intestazioni delle colonne.

+11

ok grazie, ho anche usato setResizingAllowed (false) per disabilitare il ridimensionamento. – giozh

+0

Grazie giozh :) –

+0

Anche belle letture qui: http://www.coderanch.com/t/346302/GUI/java/Restrict-User-Move-Column-JTable E un'altra risposta qui: http://stackoverflow.com/domande/1155137/how-to-tenere-a-colonna singola-da-essere-riordinato-in-a-JTable – Benj