java - "this"无法识别 - Java JTable

标签 java swing jtable this

我正在尝试使用该代码 https://stackoverflow.com/a/8187799但有一个变化:我将我的类扩展到 JTable,这样我完成后就可以用它做任何我想做的事情。然后,我只需要将 table 的出现替换为 this 即可。但在这部分代码中,它不起作用,因为我重写了一些方法:

 headerTable.getColumnModel().getColumn(0).setCellRenderer(new TableCellRenderer() {

        @Override
        public Component getTableCellRendererComponent(JTable x, Object value, boolean isSelected, boolean hasFocus, int row, int column) {

            boolean selected = getSelectionModel().isSelectedIndex(row);
            Component component = getTableHeader().getDefaultRenderer().getTableCellRendererComponent(*this*, value, false, false, -1, -2);
            ((JLabel) component).setHorizontalAlignment(SwingConstants.CENTER);
            if (selected) {
                component.setFont(component.getFont().deriveFont(Font.BOLD));
                component.setForeground(Color.red);
            } else {
                component.setFont(component.getFont().deriveFont(Font.PLAIN));
            }
            return component;   
        }
    });

我怎样才能按照我的意图使用this? (给我带来麻烦的 this 位于 * 之间)

最佳答案

您使用的 this 指的是 TableCellRenderer。

你必须使用

TopLevelClassName.this

关于java - "this"无法识别 - Java JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43208836/

相关文章:

java - 如何通过双击正确删除 JTable 中的行?

java - 如何有效地从数据库提供 i18n 消息

java - 如何防止闪烁?

java - 删除 Swing JDialog 中的 "X"按钮

java - 使用 JComboBox 计算 JTable 中的运行总计

java - JTable 为自定义类设置默认编辑器

java - (JAVA) 通过按键监听器移动剪切区域

java - JTable 内的进度条

java - 如何使用 Jackson 根据运行时条件将集合序列化为空列表

java - GridBagLayout 2 JPanels - 比其他宽度小一个