📄 chkframe.java
字号:
package res;
import java.awt.BorderLayout;
import javax.swing.JFrame;
import java.awt.Rectangle;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.Font;
import javax.swing.JButton;
import java.awt.SystemColor;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import java.util.Vector;
import javax.swing.table.AbstractTableModel;
import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;
import javax.swing.JScrollPane;
import java.awt.Color;
import javax.swing.UIManager;
/**
* <p>Title: 同学信息查询窗口</p>
*
* <p>Description: 查看同学的个人注册信息 </p>
*
* <p>Copyright: A1Q6073-未定义小组 2006</p>
*
* <p>Company: 北大青鸟Aptech(西安毕诚) </p>
*
* @author not 王亮 冯瑞 冯鹏 刘文涛 赵凡(按姓氏笔画排序)
* @version 1.0
*/
public class ChkFrame extends JFrame {
JLabel lblCname = new JLabel();
JButton btnCchk = new JButton();
JLabel lblCtit = new JLabel();
JTextField txtCname = new JTextField();
String title[] = {"序号","学号", "姓名", "性别", "电话", "电子邮件", "地址"};
Vector vc;
AbstractTableModel tm;
MainFrame mfc;
DBconnection db = new DBconnection();
ResultSet rs;
JTable jtbCmeg = new JTable();
JScrollPane jScrollPane1 = new JScrollPane();
JButton btnCchkall = new JButton();
public ChkFrame(MainFrame mf) {
try {
mfc = mf;
ShowJTable();
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
getContentPane().setLayout(null);
this.getContentPane().setBackground(SystemColor.activeCaptionBorder);
this.setResizable(false);
this.addWindowListener(new ChkFrame_this_windowAdapter(this));
lblCname.setFont(new java.awt.Font("宋体", Font.PLAIN, 16));
lblCname.setText("姓名:");
lblCname.setBounds(new Rectangle(46, 71, 46, 29));
btnCchk.setBounds(new Rectangle(207, 73, 62, 23));
btnCchk.setOpaque(false);
btnCchk.setText("查询");
btnCchk.addActionListener(new ChkFrame_btnCchk_actionAdapter(this));
lblCtit.setFont(new java.awt.Font("楷体_GB2312", Font.BOLD, 22));
lblCtit.setText("信息查询");
lblCtit.setBounds(new Rectangle(31, 26, 94, 30));
txtCname.setBounds(new Rectangle(89, 73, 108, 23));
TestImage tImage = new TestImage();
jScrollPane1.setForeground(SystemColor.activeCaptionText);
jScrollPane1.setBounds(new Rectangle(35, 120, 499, 178));
jtbCmeg.setGridColor(UIManager.getColor("CheckBox.background"));
btnCchkall.setBounds(new Rectangle(285, 73, 86, 23));
btnCchkall.setOpaque(false);
btnCchkall.setText("查询全部");
btnCchkall.addActionListener(new ChkFrame_btnCchkall_actionAdapter(this));
this.getContentPane().add(tImage);
tImage.add(lblCtit);
tImage.add(jScrollPane1);
tImage.add(lblCname);
tImage.add(txtCname);
tImage.add(btnCchk);
tImage.add(btnCchkall);
jScrollPane1.getViewport().add(jtbCmeg);
tImage.setLayout(null);
tImage.setBounds(new Rectangle(0, 0, 565, 315)); //面板图片大小,下行为需要插的图片
tImage.setImage("image\\f.jpg");
tImage.setSize(565, 315);
setTitle("信息查询");
}
/*自定义在JTable里显示查询结果*/
public void ShowJTable() {
try {
vc = new Vector();
tm = new AbstractTableModel() {
public int getColumnCount() {
return title.length;
}
public int getRowCount() {
return vc.size();
}
public Object getValueAt(int row, int column) {
if (!vc.isEmpty()) {
return ((Vector) vc.elementAt(row)).elementAt(column);
} else {
return null;
}
}
public String getColumnName(int column) {
return title[column];
}
//数据模型不可编辑,该方法设置为空
public void setValueAt
(Object value, int row, int column) {}
//取得列所属对象类
public Class getColumnClass(int c) {
return getValueAt(0, c).getClass();
}
//设置单元格不可编辑,为缺省实现
public boolean isCellEditable(int row, int column) {
return false;
}
};
//生成自己的数据模型
jtbCmeg = new JTable(tm);
//设置帮助提示
jtbCmeg.setToolTipText("显示全部查询结果");
//设置表格调整尺寸模式
jtbCmeg.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
//设置单元格选择方式
jtbCmeg.setCellSelectionEnabled(false);
//设置是否显示单元格间的分割线
jtbCmeg.setShowVerticalLines(true);
//设置表是否绘制单元格之间的水平线
jtbCmeg.setShowHorizontalLines(true);
} catch (Exception exception) {
exception.printStackTrace();
}
}
/*查询事件*/
public void btnCchk_actionPerformed(ActionEvent e) {
String sql = "select * from stumeg where sname='" + txtCname.getText() +
"'";
rs = db.GetRs(sql);
try {
//判断要查询的姓名是否为空
if (txtCname.getText().trim().equals("")) {
JOptionPane.showMessageDialog(this, "您没有输入您要查询的姓名!");
} else if (rs != null && rs.next() != true) { // 判断要查询的姓名是否存在
JOptionPane.showMessageDialog(this, "对不起,没有您输入姓名!");
} else {
//初始化向量对象
vc.removeAllElements();
//更新表格内容
tm.fireTableStructureChanged();
//将指针移动到此 ResultSet 对象的开头
rs.beforeFirst();
int i=1;
while (rs.next()) {
Vector rec_vector = new Vector();
//从结果集中取数据放入向量rec_vector中
rec_vector.addElement(i+"\t");
rec_vector.addElement(rs.getString(1));
rec_vector.addElement(rs.getString(2));
rec_vector.addElement(rs.getString(4));
rec_vector.addElement(rs.getString(5));
rec_vector.addElement(rs.getString(6));
rec_vector.addElement(rs.getString(7));
//向量rec_vector加入向量vect中
vc.addElement(rec_vector);
i++;
}
//更新表格,显示向量vect的内容
tm.fireTableStructureChanged();
rs.close();
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(this, ex.getMessage() + " 查询事件有误");
}
}
/*窗口关闭事件*/
public void this_windowClosing(WindowEvent e) {
mfc.setEnabled(true);
}
//查询全部事件
public void btnCchkall_actionPerformed(ActionEvent e) {
String sql = "select * from stumeg where id<>'admin'";
rs = db.GetRs(sql);
try {
//初始化向量对象
vc.removeAllElements();
//更新表格内容
tm.fireTableStructureChanged();
//将指针移动到此 ResultSet 对象的开头
rs.beforeFirst();
int i = 1;
while (rs.next()) {
Vector rec_vector = new Vector();
//从结果集中取数据放入向量rec_vector中
rec_vector.addElement(i + "\t");
rec_vector.addElement(rs.getString(1));
rec_vector.addElement(rs.getString(2));
rec_vector.addElement(rs.getString(4));
rec_vector.addElement(rs.getString(5));
rec_vector.addElement(rs.getString(6));
rec_vector.addElement(rs.getString(7));
//向量rec_vector加入向量vect中
vc.addElement(rec_vector);
i++;
}
//更新表格,显示向量vect的内容
tm.fireTableStructureChanged();
rs.close();
} catch (Exception ex) {
}
}
}
class ChkFrame_btnCchkall_actionAdapter implements ActionListener {
private ChkFrame adaptee;
ChkFrame_btnCchkall_actionAdapter(ChkFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnCchkall_actionPerformed(e);
}
}
class ChkFrame_this_windowAdapter extends WindowAdapter {
private ChkFrame adaptee;
ChkFrame_this_windowAdapter(ChkFrame adaptee) {
this.adaptee = adaptee;
}
public void windowClosing(WindowEvent e) {
adaptee.this_windowClosing(e);
}
}
class ChkFrame_btnCchk_actionAdapter implements ActionListener {
private ChkFrame adaptee;
ChkFrame_btnCchk_actionAdapter(ChkFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnCchk_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -