E' possibile impedire che venga selezionato un elemento da una jlist mentre si sta facendo un'altra operazione? In pratica, disabilitare momentaneamente il listener o qualcosa del genere.
Grazie!
E' possibile impedire che venga selezionato un elemento da una jlist mentre si sta facendo un'altra operazione? In pratica, disabilitare momentaneamente il listener o qualcosa del genere.
Grazie!
Ho provato a usare questo metodo:
Però non fa esattamente quel che vorrei. In pratica scompare solo lo sfondo blu di riga selezionata ma il resto funziona...codice:private void disableMenuListSelection() { menuList.setCellRenderer(new DefaultListCellRenderer() { @Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { super.getListCellRendererComponent(list, value, index, false, false); return this; } }); }
Non fai prima a fare setEnabled(false) sul componente JList?
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI
La cosa più semplice: disabilitare il componente (setEnabled). Altrimenti per tutti quei casi in cui si vuole ad esempio limitare la selezione (es. max 3 selezionati) o controllarla/impedirla in modo particolare, bisogna lavorare a livello di ListSelectionModel, tipicamente estendendo DefaultListSelectionModel e sovrascrivendo qualcosa. Ma per farlo bisogna avere ben chiaro come funziona il ListSelectionModel.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet