2013-08-01 7 views
0

Я создал JComboBox в своей колонке, и он отлично работает. Проблема возникает, когда я пытался добавить еще один редактор в том же столбце. Сценарий, пользователь должен выбрать значение из ComboBox как свое замечание. Если они выбирают другие, другое текстовое поле должно появляться под ComboBox для ввода пользователем.Добавить несколько редакторов в одну ячейку

Код для ComboBox

 TableColumn col5 = jTable1.getColumnModel().getColumn(4);   
     String[] options = new String[]{"Font Issue","Text Issue","Image Issue","AI Issue","Others"}; 
     JComboBox combo1 = new JComboBox(options); 
     JComboBox combo2 = new JComboBox(options); 
     col5.setCellEditor(new DefaultCellEditor(combo1)); 
     col5.setCellRenderer(new ComboBoxRenderer(combo2)); 

     combo2.addActionListener(new ActionListener() { 
      public void actionPerformed(ActionEvent e) {     

       JComboBox nameCombo = (JComboBox)e.getSource(); 

       String newSelection = (String)nameCombo.getSelectedItem();    

       if(newSelection.equalsIgnoreCase("others")) 
       {       
       } 
      } 
     }); 

Когда я добавить еще один редактор.

MyTableCellEditor textEditor = new MyTableCellEditor(); col5.setCellEditor(textEditor);

Это перезаписать DropDownList. Я хочу иметь что-то вроде этого.

enter image description here

+0

Возможно, это я, но я не совсем понимаю, что именно вы пытаетесь сделать. Если вы не получите достойный ответ в ближайшее время, подумайте о том, чтобы описать вещи более подробно. –

+0

Я хочу создать Jcombobox и texteditor в той же ячейке, что и моя фотография выше. –

ответ

2

распашные редакторы предназначены для занимают пространство одной ячейки. Если вы хотите отобразить панель с двумя компонентами, вам нужно будет создать всплывающий редактор. Прочтите раздел из учебника Swing по телефону Using Other Editors для примера того, как вы можете это сделать.

 Смежные вопросы

  • Нет связанных вопросов^_^