2012-06-22 2 views
5

Я пытался добавить JRadioButton в JTable с помощью CellEditor и CellRenderer, но я не могу добавить JRadioButton в JTable. Я использую NetBeans и backend MySQL. Пожалуйста, помогите мне.Могу ли я добавить JRadioButton в JTable

Редактировать: Спасибо, но я понятия не имею, как сгруппировать JRadioButton. Вы можете мне помочь? У меня есть 4 столбца. Первая ячейка столбца, содержащая имя элемента, ячейку второго столбца, содержащую количество, ячейки 3-го и 4-го столбцов, содержащие JRadio Buttons. Затем я хочу группировать ячейки 3-го и 4-го столбцов, содержащие кнопки 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 в a JTable; рассмотрите эти альтернативы:

  • Используйте режим SINGLE_SELECTION, чтобы выбрать отдельные строки.

    table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 
    
  • Используйте колонку типа Boolean.class, которая будет оказана с использованием JCheckBox. Этот example ограничивает выбор одной строкой.

  • использовать JComboBox как editor для взаимоисключающих вариантов в пределах подряд.

  • Дополнение: Если JRadioButton требуется, они могут быть добавлены к JPanel, как показано в этом example из-за @mKorbel.

  • Дополнение: Если каждый JRadioButton имеет свою собственную колонку, вы не можете использовать ButtonGroup, поскольку одна кнопка используется для всех ячеек, имеющих один и тот же renderer. You может обновить другие кнопки в той же строке от вашего TableModel, что должно переопределить setValueAt(), чтобы обеспечить соблюдение правила единственного выбора, которое обычно управляется ButtonGroup. Пример: here.

  • Приложение: example благодаря @Guillaume Polet иллюстрирует способ управления одним переключателем в строке.

+0

См. Также ['CheckBunch'] (http://stackoverflow.com/a/4528604/230513). – trashgod

+0

Я перенес свой новый код на ваш вопрос и обновил свой ответ, включив соответствующий пример. – trashgod

+0

У меня есть 4 столбца. Первая ячейка столбца, содержащая имя элемента, ячейку второго столбца, содержащую количество, ячейки 3-го и 4-го столбцов, содержащие JRadio Buttons. Затем я хочу группировать ячейки 3-го и 4-го столбцов, содержащие кнопки JRadio в каждой строке. –

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