Java中JTbale使用—设置单元格对齐方式

 【作者:孟祥月  博客:http://blog.csdn.net/mengxiangyue】

import java.awt.Color;
import java.awt.Component;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableModel;
//设置单元格对齐方式
public class Table6 extends JFrame 
{
	JTable table;
	JScrollPane pane;
	TableModel model;
	//数据
	Object[][] data = {{"张三","男",3},
						{"李四","男",4},
						{"小红","女",5}};
	//列名
	Object[] clomnName = {"姓名","性别","年龄"};
	Table6()
	{
		super("表格测试程序");
		init();
	}
	private void init()
	{
		//初始化TableModel,使用数据data,列名clomnName
		model = new DefaultTableModel(data, clomnName)
		{//设置表格中的数据不可以编辑
			public boolean isCellEditable(int r,int c)
			{
				return false;
			}
		};
		//使用上面的model作为参数初始化JTabel
		table = new JTable(model);
		//设置对齐
		setDuiqi(table);
		//初始化JScrollPane
		pane = new JScrollPane();
		//将table添加到JScrollPane上 这里使用下面的第一种方法不能添加
		//使用第一个先获得JViewPort对象,然后再添加
		pane.getViewport().add(table);
		this.getContentPane().add(pane);
		setSize(400,300);//设置Frame的大小
		setResizable(false);//设置窗口不可以调整大小
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//退出时关闭窗口
		setVisible(true);//设置窗口显示出来
	}
	//设置JTable表格单元格对齐的效果
	public void setDuiqi(JTable table)
	{
		//对其方式设置
		DefaultTableCellRenderer d = new DefaultTableCellRenderer();
		
		//设置表格单元格的对齐方式为居中对齐方式
		d.setHorizontalAlignment(JLabel.CENTER);
			for(int i = 0; i< table.getColumnCount();i++)
			{
				TableColumn col = table.getColumn(table.getColumnName(i));
				col.setCellRenderer(d);
			}
			
	}
	public static void main(String[] args)
	{
		new Table6();
	}
}


你可能感兴趣的:(Java中JTbale使用—设置单元格对齐方式)