◆◆简单问题◆◆【请问如何同时给JTable中的不同的行使用不同的字体和颜色?】 我是用JBuilder开发applacation,不是web,不过用人进来交流,不管问题解没解决这还像个论坛的样子。谢谢 lifan5748(易水寒) 和 lasthope(学生) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.awt.BorderLayout;import java.awt.Color;import java.awt.Component;import java.awt.Font;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.table.DefaultTableCellRenderer;import javax.swing.table.DefaultTableModel;public class TableTest{ public static void main(String[] args) { DefaultTableModel model = new DefaultTableModel(10, 10); for (int i = 0; i < 10; i++) { for (int k = 0; k <10 ; k++) { model.setValueAt(i + "," + k, i, k); } } JTable table = new JTable(model); table.setDefaultRenderer(Object.class, new Renderer()); JScrollPane sp = new JScrollPane(table); JFrame f = new JFrame(); f.getContentPane().add(sp, BorderLayout.CENTER); f.setSize(800, 600); f.setLocationRelativeTo(null); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.show(); } static class Renderer extends DefaultTableCellRenderer { Font font1 = getFont().deriveFont(Font.PLAIN); Font font2 = getFont().deriveFont(Font.BOLD); public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); if (!isSelected) { if (row % 2 == 1) { setBackground(Color.lightGray); setForeground(Color.red); } else { setBackground(Color.white); setForeground(Color.blue); } } if (row % 2 == 1) { setFont(font1); } else { setFont(font2); } return this; } }} 一个小java 程序题目 java线程 如何监控用户操作超时 java connected to sqlserver2000!非常郁闷 有关数据库的问题,有高手帮忙执行一下有什么错误啊。。 为什么用在appletviewer查看sayhello程序提示未被初始化 关于log4j和commons-logging结合的问题。 求Forte的中文资料 java只做socket通信,用C++处理协议解析? 如何解析java中的命令行参数? 请问一个jsp页面可不可以引用两个bean? 从vc向java转的新鸟,关于import不明白... 大家觉得用什么JAVA编译器好啊
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;public class TableTest
{ public static void main(String[] args)
{
DefaultTableModel model = new DefaultTableModel(10, 10);
for (int i = 0; i < 10; i++) {
for (int k = 0; k <10 ; k++) {
model.setValueAt(i + "," + k, i, k);
}
}
JTable table = new JTable(model);
table.setDefaultRenderer(Object.class, new Renderer());
JScrollPane sp = new JScrollPane(table);
JFrame f = new JFrame();
f.getContentPane().add(sp, BorderLayout.CENTER);
f.setSize(800, 600);
f.setLocationRelativeTo(null);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.show();
} static class Renderer extends DefaultTableCellRenderer
{
Font font1 = getFont().deriveFont(Font.PLAIN);
Font font2 = getFont().deriveFont(Font.BOLD); public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus,
int row, int column)
{
super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
if (!isSelected) {
if (row % 2 == 1) {
setBackground(Color.lightGray);
setForeground(Color.red);
}
else {
setBackground(Color.white);
setForeground(Color.blue);
}
} if (row % 2 == 1) {
setFont(font1);
}
else {
setFont(font2);
} return this;
}
}
}