2013-08-01 85 views
0

我在我的列中創建了JComboBox,它工作正常。當我試圖在同一列中添加一個更多編輯器時,就會出現問題。情景中,用戶需要從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);

它覆蓋下拉列表。我想有這樣的事情。

enter image description here

+0

也許這是我,但我很不清楚你想做什麼。如果您很快就沒有得到像樣的答案,請考慮更詳細地描述事情。 –

+0

我想創建Jcombobox和texteditor像上面我的照片一樣的單元格。 –

回答

2

搖擺編輯被設計成佔據一個單電池的空間。如果要顯示帶有兩個組件的面板,則需要創建一個彈出式編輯器。閱讀Swing教程Using Other Editors中的部分,瞭解如何執行此操作的示例。

相關問題