java table每列对齐_请问在java JTable中如何设置单元格字体居中对齐?

展开全部

这是三个类,你62616964757a686964616fe58685e5aeb931333332613138重新整一下哟!package database.other;import java.awt.BorderLayout;

import java.awt.FlowLayout;

import java.awt.Font;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JScrollPane;

import javax.swing.JTable;

import javax.swing.JTextField;public class MainFrame extends JFrame implements ActionListener {

private static final long serialVersionUID = 7094024210608765600L;

private UserModel model;

private JTextField txtName = new JTextField(10);

private JTextField txtPWD = new JTextField(10);

private JButton btnAdd = new JButton("添加");public MainFrame() {

super("数据库表格演示");

this.setLayout(new BorderLayout());

//添加Table

model = new UserModel();

JTable table = new JTable(model);

table.setFont(new Font(null, Font.PLAIN, 20));

table.getTableHeader().setFont(new Font(null, Font.BOLD, 22));

this.add(new JScrollPane(table), BorderLayout.CENTER);

//添加数据相关控件

JPanel panel = new JPanel(new FlowLayout());

panel.add(new JLabel("姓名:"));

panel.add(txtName);

panel.add(new JLabel("密码:"));

panel.add(txtPWD);

panel.add(btnAdd);

this.add(panel, BorderLayout.PAGE_END);

//事件绑定

btnAdd.addActionListener(this);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.pack();

this.setResizable(false);

this.setVisible(true);

}@Override

public void actionPerformed(ActionEvent e) {

boolean result = model.addUser(txtName.getText(), txtPWD.getText());

if (!result) {

JOptionPane.showMessageDialog(this, "数据添加失败!");

}

}public static void main(String[] args) {

new MainFrame();

}

}

package database.other;public class UserInfo {

private int userID;

private String userName;

private String passWord;public UserInfo() {

}public int getUserID() {

return userID;

}public void setUserID(int userID) {

this.userID = userID;

}public String getUserName() {

return userName;

}public void setUserName(String userName) {

this.userName = userName;

}public String getPassWord() {

return passWord;

}public void setPassWord(String passWord) {

this.passWord = passWord;

}@Override

public String toString() {

return String.format("%d,%s,%s", userID, userName, passWord);

}

}

package database.other;import database.one.SqlConnection;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ArrayList;

import javax.swing.table.AbstractTableModel;public class UserModel extends AbstractTableModel {

private static final long serialVersionUID = 3488161650785725386L;

private ArrayList users = new ArrayList();

private SqlConnection sc;public UserModel() {

super();

sc = new SqlConnection();

init();

}@Override

public int getColumnCount() {

return 3;

}@Override

public int getRowCount() {

return users.size();

}@Override

public Object getValueAt(int row, int column) {

UserInfo user = users.get(row);

switch (column) {

case 0:

return user.getUserID();

case 1:

return user.getUserName();

case 2:

return user.getPassWord();

default:

return null;

}

}@Override

public String getColumnName(int column) {

switch (column) {

case 0:

return "用户编号";

case 1:

return "用户名称";

case 2:

return "用户密码";

default:

return super.getColumnName(column);

}

}private void init() {

//初始化数据

Connection conn = sc.getConnection();

String sql = "select * from UserInfo";

try {

Statement s = conn.createStatement();

ResultSet rs = s.executeQuery(sql);

while (rs.next()) { //读取数据到集合中

UserInfo user = new UserInfo();

user.setUserID(rs.getInt(1));

user.setUserName(rs.getString(2));

user.setPassWord(rs.getString(3));

users.add(user);

}

}

catch (SQLException e) {

System.out.printf("%s%n", e.getMessage());

}

finally {

try {

conn.close();

}

catch (SQLException e) {

}

}

}public boolean addUser(String userName, String passWord) {

//添加用户

Connection conn = sc.getConnection();

String sql = "insert into UserInfo (UserName,PassWord) values (?,?)";

PreparedStatement ps;

UserInfo user = new UserInfo();

user.setUserName(userName);

user.setPassWord(passWord);

try {

ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);

ps.setString(1, userName);

ps.setString(2, passWord);

int x = ps.executeUpdate();

if (x == 1) {

ResultSet rs = ps.getGeneratedKeys();

if (rs.next()) {

user.setUserID(rs.getInt(1));

}

users.add(user);

fireTableDataChanged();

return true;

}

return false;

}

catch (SQLException e) {

System.out.printf("%s%n", e.getMessage());

return false;

}

finally {

try {

conn.close();

}

catch (SQLException e) {

}

}

}

}

回答完毕,希望对你的提问有帮助,如果满意请采纳o(∩_∩)o...哈哈

2Q==

已赞过

已踩过<

你对这个回答的评价是?

评论

收起

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值