在下自己的代码,写成这样后,不知如何着手了,请指点
package menu;
import java.awt.FlowLayout;
import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.event.ActionListener;import java.awt.event.MouseListener;import javax.swing.table.TableColumn;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.DefaultTableModel;public class Mjtable extends JFrame {
DefaultTableColumnModel colmodel=new javax.swing.table.DefaultTableColumnModel();
javax.swing.table.DefaultTableModel dtm=null;
TableColumn tmptc=new TableColumn();
TableColumn lasttc=new TableColumn();
JScrollPane js=new JScrollPane();
Object[][] t1val={
{"编号"},{"名称"},{"体型"},{"岁数"},{"身高"}
};
String[] tt={"colname","文本框"};
JTable jt;
JLabel jl=new JLabel();
public Mjtable()
{
add(js);
dtm = new DefaultTableModel(t1val,tt);
colmodel.addColumn(tmptc);
colmodel.addColumn(lasttc);//希望能让这一列变成一个JTextField或是JButton;但现在它是重复显示第一列的内容
jt=new JTable(dtm,colmodel); js.setViewportView(jt);
}
public static void main(String[] args)
{
Mjtable mj=new Mjtable();
mj.setSize(800,600);
mj.setVisible(true);
}
}
package menu;
import java.awt.FlowLayout;
import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.event.ActionListener;import java.awt.event.MouseListener;import javax.swing.table.TableColumn;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.DefaultTableModel;public class Mjtable extends JFrame {
DefaultTableColumnModel colmodel=new javax.swing.table.DefaultTableColumnModel();
javax.swing.table.DefaultTableModel dtm=null;
TableColumn tmptc=new TableColumn();
TableColumn lasttc=new TableColumn();
JScrollPane js=new JScrollPane();
Object[][] t1val={
{"编号"},{"名称"},{"体型"},{"岁数"},{"身高"}
};
String[] tt={"colname","文本框"};
JTable jt;
JLabel jl=new JLabel();
public Mjtable()
{
add(js);
dtm = new DefaultTableModel(t1val,tt);
colmodel.addColumn(tmptc);
colmodel.addColumn(lasttc);//希望能让这一列变成一个JTextField或是JButton;但现在它是重复显示第一列的内容
jt=new JTable(dtm,colmodel); js.setViewportView(jt);
}
public static void main(String[] args)
{
Mjtable mj=new Mjtable();
mj.setSize(800,600);
mj.setVisible(true);
}
}
楼主【III_dont_know】截止到2008-07-07 16:36:45的历史汇总数据(不包括此帖):
发帖的总数量:16 发帖的总分数:440
结贴的总数量:15 结贴的总分数:390
无满意结贴数:1 无满意结贴分:50
未结的帖子数:1 未结的总分数:50
结贴的百分比:93.75 % 结分的百分比:88.64 %
无满意结贴率:6.67 % 无满意结分率:12.82 %
值得尊敬
package menu;
import java.awt.FlowLayout;
import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.event.ActionListener; import java.awt.event.MouseListener; import javax.swing.table.TableColumn;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.DefaultTableModel;
public class Mjtable extends JFrame {
DefaultTableColumnModel colmodel=new javax.swing.table.DefaultTableColumnModel();
javax.swing.table.DefaultTableModel dtm=null;
javax.swing.table.TableModel tm=null;
TableColumn tmptc=new TableColumn();
TableColumn lasttc=new TableColumn();
JScrollPane js=new JScrollPane();
Object[][] t1val={
{"编号","选择"},{"名称","选择"},{"体型","选择"},{"岁数","选择"},{"身高","选择"}
};
String[] tt={"colname","文本框"};
JTable jt;
JLabel jl=new JLabel();
public Mjtable()
{
add(js);
dtm = new DefaultTableModel(t1val,tt);
colmodel.addColumn(tmptc);
lasttc.setCellRenderer(new JButtonRender());
colmodel.addColumn(lasttc);
jt=new JTable(dtm,colmodel); js.setViewportView(jt);
}
public static void main(String[] args)
{
Mjtable mj=new Mjtable();
mj.setSize(800,600);
mj.setVisible(true);
mj.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
class JButtonRender extends JButton implements TableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
if(isSelected)
{
setBackground(Color.RED);
}else
{
setBackground(null);
}
if(hasFocus)
{
this.transferFocusBackward();
}
setText((value == null) ? "" : "选择"); return this;
}
}
}
Object[][] t1val={
{"编号"},{"名称"},{"体型"},{"岁数"},{"身高"}
};
而绑定到表格后,却在两列中都显示相同的数据呢???应该如何处理掉最后一列不要其显示和第一列相同的数据呢?