Visualizzazione dei risultati da 1 a 7 su 7

Discussione: JComboBox che non mostra i dati all'interno di una Jtable.

  1. #1

    JComboBox che non mostra i dati all'interno di una Jtable.

    Salve a tutti.

    Premessa: utilizzo una JDialog.

    All'interno di questa definisco un Jpanel al quale aggiungo una Jtable con JbomboBox.

    Di seguito il codice:

    codice:
            JPanel panelControlli = new JPanel();
            JTable table = new JTable(10,5);
            
            TableColumn tbCol = table.getColumnModel().getColumn(0);
            JComboBox comboBox = new JComboBox();
            comboBox.addItem("Snowboarding");
            comboBox.addItem("Rowing");
            comboBox.addItem("Chasing toddlers");
            comboBox.addItem("Speed reading");
            comboBox.addItem("Teaching high school");
            comboBox.addItem("None");
            tbCol.setCellEditor(new DefaultCellEditor(comboBox));        
            
            JScrollPane scrollTable = new JScrollPane(table);
            panelControlli.add(scrollTable);
    Tuttavia quando avvio il progetto e mi si presenta la Dialog, al doppio clic sulla cella con la JComboBox, la stessa pur venendo evidenziata, non mi mostra i dati dell'elenco.

    Cosa molto strana, se riduco le dimensioni della Dialog col mouse e quindi riduco lo spazio della colonne su cui è presente la JComboBox, al doppio clic su quest'ultima i dati vengono presentati.

    Allego, per chiarezza il entrambi i casi.

    Mi sapete dire cosa debbo fare per fare funzionare correttamente l'esposizione delle voci della combo?

    Grazie anticipatamente.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  2. #2
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  4. #4
    Quote Originariamente inviata da maximum Visualizza il messaggio
    Mi sapete dire cosa debbo fare per fare funzionare correttamente l'esposizione delle voci della combo?
    A cosa ti riferisci esattamente? Perché il codice, a vista, di per sé è corretto.
    Andrea, www.andbin.net – Senior Java developer – SCJP 5 (91%) – SCWCD 5 (94%)
    Il mio blog sulla programmazione

  5. #5
    Quando mi compare la dialog al doppio clic sulla cella con la combo, non si vedono gli item,come se la combo non venisse "esplosa" (vedi allegato 1), mentre se riduco le dimensioni della dialog, quindi la colonna della tabella risulta essere al di fuori delle dimensioni che appaiono al prima caricamento, e faccio doppio clic sulla cella con la combobox, gli item vengono mostrati (vedi allegato 2).
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  6. #6
    Ho risolto assegnando l'oggetto panelControlli alla Dialog.
    Sbagliavo invece assegnandolo all'oggetto pane istanziato: JRootPane pane = getRootPane();
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  7. #7
    Quote Originariamente inviata da maximum Visualizza il messaggio
    Ho risolto assegnando l'oggetto panelControlli alla Dialog.
    Sbagliavo invece assegnandolo all'oggetto pane istanziato: JRootPane pane = getRootPane();
    Salvo casi ultra-particolari, non si usa mai il "root pane". Generalmente si inseriscono i componenti nel "content pane" del JFrame/JDialog/JWindow/JApplet/JInternalFrame che si ha.
    Andrea, www.andbin.net – Senior Java developer – SCJP 5 (91%) – SCWCD 5 (94%)
    Il mio blog sulla programmazione

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 © 2017 vBulletin Solutions, Inc. All rights reserved.