在这次课程设计中,大部分内容都设计的很流畅,没有遇到太大的问题,但在面板中加入JTable时确实花费了一部分时间,在此将解决办法总结出来:

定义控件:

JPanel panel = new JPanel();
JTable table;
JScrollPane jscrollpane = new JScrollPane();

定义JTable中的两个参数:

Object[] columnNames = new Object[]{"客车号","载客量","始发地","目的地","发车时间","到达时间","所需时间"};//列名
Object[][] rowData = new Object[50][7];//行数,列数

将JTable放到JPanel上,必须有JScrollPane的过度,才能保证列名正常显示:

table = new JTable(rowData,columnNames);
jscrollpane.setBounds(200, 100, 550, 650);
jscrollpane.setViewportView(table);//这句很重要
table.setRowHeight(35);
/**
* 字居中显示设置
*/
DefaultTableCellRenderer r = new DefaultTableCellRenderer();
r.setHorizontalAlignment(JLabel.CENTER);
table.setDefaultRenderer(Object.class,r);
add(jscrollpane);

效果如图所示:

Java图形界面(GUI)——如何将JTable成功放入面板-LMLPHP

05-28 22:57