日期:2014-05-20  浏览次数:20721 次

我使用了TableCellRenderer 但是在table中无法选中行了,怎么解决?高手来
我写了public class TableCellTextAreaRenderer extends JTextArea implements TableCellRenderer
并且添加到JTable中的了,table.setDefaultRenderer(Object.class, MainFrame.Renderer);但是,在界面中,table不能选中了,高手来解决,多谢了

------解决方案--------------------

getTableCellRenererComponent方法的参数里面有一个isSelected,就是标识是否选中的,不知道你是否进行了处理。也许是选中了,但是没有像jdk实现的那样有颜色的变化,所以看去就像没有选中一样吧。
这仅是个人猜测。
更多信息,请贴出代码。
------解决方案--------------------
顶1F,
应该是你renderer方法实现的时候,没有针对处理。
Java code

        if (isSelected) {
            super.setForeground(fg == null ? table.getSelectionForeground()
                                           : fg);
            super.setBackground(bg == null ? table.getSelectionBackground()
                                           : bg);