我绝对不是解释问题的最佳人选,但让我试试。
我有一个小程序。在JTabel
中,我有一列作为复选框。我
只想在标题中添加文本,以便我有一些文本,而不是在下一行中我有复选框。
使用 setText headerRenderer
对我的事业没有帮助,因为它将测试附加到复选框而不是引入新行。此外,我想避免使用JPanel
,因为我认为这会给我带来更多问题。
谁能建议我如何完成这项工作?
如果JPanel
是唯一的选择,有人可以告诉我如何使用它。
如何将控件放在JTable
的JTableHeader
中?包括几个重要的警告,并展示了一个使用 JToggleButton
的示例。在这种情况下,您需要一个两行JCheckBox
,而没有封闭JPanel
的复杂性。
您可以考虑实现 Icon
接口,如此处所示的TableCellRenderer
。这将允许您利用组件的水平和垂直对齐所提供的控件。为了保持一致性,请使用文本JCheckBox
的 UI 属性,如SelectAllHeader
所示。我会尝试在 paintIcon ()
中渲染JLabel
,但此处所示的TextLayout
是获取正确指标的另一种方法。