这是“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);
}
});`
答案 0 :(得分:1)
从JTextField获得的文本只是普通的字符串,而字符串没有颜色。
您需要为JTable创建自定义单元格渲染器。您可以在此处阅读有关渲染器的信息: How to Use Tables in the Swing tutorial