当前位置: 技术问答>java相关
那位大哥帮忙看看这个,为什么我编译不过去!
来源: 互联网 发布时间:2015-05-25
本文导语: http://www2.gol.com/users/tame/swing/examples/JTableExamples1.html 例如: JTableExamples1.html页下的Groupable Header例子.共有四个文件 GroupableHeaderExample.java ColumnGroup.java GroupableTableHeader.java GroupableTableHeaderUI.java 我把这...
http://www2.gol.com/users/tame/swing/examples/JTableExamples1.html
例如:
JTableExamples1.html页下的Groupable Header例子.共有四个文件
GroupableHeaderExample.java
ColumnGroup.java
GroupableTableHeader.java
GroupableTableHeaderUI.java
我把这四个文件放到G:workItest下.
我只能编译成功ColumnGroup.java文件!
把文件中这一行屏蔽掉
package jp.gr.java_conf.tame.swing.table;
(在后三个文件中
)
主文件中同样,//import jp.gr.java_conf.tame.swing.table.*;
这样便已没有问题,不过我在运行时报错,
那位大哥给研究研究!
例如:
JTableExamples1.html页下的Groupable Header例子.共有四个文件
GroupableHeaderExample.java
ColumnGroup.java
GroupableTableHeader.java
GroupableTableHeaderUI.java
我把这四个文件放到G:workItest下.
我只能编译成功ColumnGroup.java文件!
把文件中这一行屏蔽掉
package jp.gr.java_conf.tame.swing.table;
(在后三个文件中
)
主文件中同样,//import jp.gr.java_conf.tame.swing.table.*;
这样便已没有问题,不过我在运行时报错,
那位大哥给研究研究!
|
在GroupableTableHeaderUI.java程序中
定义并初始TableCellRenderer renderer...的语句后加以下程序段:
if (renderer == null) {
renderer = new DefaultTableCellRenderer() {
public Component getTableCellRendererComponent(
JTable table, Object value,
boolean isSelected, boolean hasFocus,
int row, int column) {
JTableHeader header = table.getTableHeader();
if (header != null) {
setForeground(header.getForeground());
setBackground(header.getBackground());
setFont(header.getFont());
}
setHorizontalAlignment(JLabel.CENTER);
setText((value == null) ? "" : value.toString());
setBorder(UIManager.getBorder
("TableHeader.cellBorder"));
return this;
}
};
}
原因是renderer总返回一个空值,须定义一下--至于为什么返回空,:(,
请大虾们解释吧.
定义并初始TableCellRenderer renderer...的语句后加以下程序段:
if (renderer == null) {
renderer = new DefaultTableCellRenderer() {
public Component getTableCellRendererComponent(
JTable table, Object value,
boolean isSelected, boolean hasFocus,
int row, int column) {
JTableHeader header = table.getTableHeader();
if (header != null) {
setForeground(header.getForeground());
setBackground(header.getBackground());
setFont(header.getFont());
}
setHorizontalAlignment(JLabel.CENTER);
setText((value == null) ? "" : value.toString());
setBorder(UIManager.getBorder
("TableHeader.cellBorder"));
return this;
}
};
}
原因是renderer总返回一个空值,须定义一下--至于为什么返回空,:(,
请大虾们解释吧.