2012-06-22 81 views
5

我嘗試用CellEditorCellRenderer添加JRadioButtonJTable,但我不能添加到JRadioButtonJTable。我正在使用NetBeans和後端MySQL。請幫幫我。編輯:謝謝,但我不知道如何組JRadioButton。你可以幫我嗎? 我有4列。首先柱細胞含有物品名稱,數量含有,第三和第四列的單元contiaining JRadio Buttons.Then欲分組第三和含有各行我可以添加一個JRadioButton到JTable中

編輯在JRadio按鈕第四列的單元第二列單元:如果我嘗試通過使用此JTable中的自定義代碼添加單選按鈕,

new JRadioButton("a"),然後it'l來作爲,javax.swing.JRadioButton[,0,0,0x0,invalid,alignmentX=0.0,.....text=a],在列,而不是按鈕

+0

想要獲得更好的指導,請編輯您的問題以包含顯示您有任何問題的[sscce](http://sscce.org/)。 – trashgod

+0

另請參閱此[相關問題](http://stackoverflow.com/q/11259579/230513)。 – trashgod

回答

6

目前還不清楚要如何使用JRadioButton在一個JTable;考慮以下替代方案:

  • 使用SINGLE_SELECTION模式選擇單個行。

    table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 
    
  • 使用Boolean.class類型,這將使​​用JCheckBox被渲染的一列。這example限制選擇到單個行。

  • 使用JComboBoxeditor一排相互排斥的選項。

  • 附加:如果需要JRadioButton,則可以將它們添加到JPanel,如example歸因於@mKorbel。

  • 附錄:如果每個JRadioButton都有自己的列,你不能使用ButtonGroup因爲一個按鈕用於具有相同renderer所有單元格。您可以更新您的TableModel中同一行中的其他按鈕,這應該覆蓋setValueAt()以強制執行通常由ButtonGroup管理的單選規則。有一個例子here

  • 附錄:由於@Guillaume Polet,此example說明了一種管理每行一個單選按鈕的方法。

+0

另請參閱['CheckABunch'](http://stackoverflow.com/a/4528604/230513)。 – trashgod

+0

我已將您的新代碼遷移至您的問題,並更新我的答案以包含相關示例。 – trashgod

+0

我有4列。第一列單元格包含項目名稱,第二列單元格包含數量,第三和第四列單元格contiaining JRadio按鈕。然後我想分組的第3和第4列單元格包含JRadio按鈕在每一行。 –

相關問題