Java jTextField颜色问题。颜色也不显示在jTable中

Java jTextField颜色问题。颜色也不显示在jTable中,java,jtable,Java,Jtable,这是“AddEntry”类的一部分。文本字段的颜色仅在第一个文本字段中更改,而不是全部四个文本字段 private class HandlerClass implements ItemListener { public void itemStateChanged(ItemEvent event) { if (friend.isSelected()) { jTextField1.setForeground(Color.BLUE);

这是“AddEntry”类的一部分。文本字段的颜色仅在第一个文本字段中更改,而不是全部四个文本字段

 private class HandlerClass implements ItemListener {
    public void itemStateChanged(ItemEvent event) {

        if (friend.isSelected())
        {
        jTextField1.setForeground(Color.BLUE);
        jTextField2.setForeground(Color.BLUE);
        jTextField3.setForeground(Color.BLUE);
        jTextField4.setForeground(Color.BLUE);
        }
输入数据后,用户将其添加到jTable中

jButton1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent e) {
            AddressBookMain.addEntry(new AddressBook(jTextField1.getText(), jTextField2.getText(), jTextField3.getText(), jTextField4.getText()));
        }
    });
驱动程序将联系人数据添加到jTable,但颜色不显示。他们回到黑色。如何保持颜色变化

`jButton1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent e) {
            new AddEntry().setVisible(true);
        }
    });`

从JTextFields获得的文本只是普通的字符串,字符串没有颜色

您需要为JTable创建自定义单元渲染器。您可以在此处阅读有关渲染器的信息:

将复选框/彩色标签按钮移动到JTable所在的驱动程序会更好吗?仅仅更改普通字符串是没有意义的,我担心我正在这么做。再次感谢Kaj。不,您仍然需要为表创建自定义渲染器。