📄 change.java
字号:
import java.awt.LayoutManager;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.DefaultTableModel;
public class change extends JPanel implements ActionListener{
databasemanager dbm;
JLabel label_num;
JTextField textfield_num;
JTable table;
JScrollPane sc;
DefaultTableModel tmodel;
public change(databasemanager dbm){
this.dbm=dbm;
init();
}
public void init(){
this.setLayout(null);
{
label_num=new JLabel("输入学号:");
label_num.setFont(allset.font_label);
label_num.setBounds(20, 10,60,22);
this.add(label_num);
}
{
textfield_num=new JTextField();
textfield_num.setBounds(80,10,80,22);
this.add(textfield_num);
textfield_num.addActionListener(this);
}
sc=new JScrollPane();
sc.setBounds(10,50,450,250);
this.add(sc);
}
public static void main(String[] args) {
JFrame f=new JFrame("dsf");
f.setSize(480,350);
change ce=new change(new databasemanager());
f.getContentPane().add(ce);
f.setVisible(true);
}
public String createsql(){
String sql="select 学生信息表.学号,姓名,成绩表.课程代码,课程名称,成绩 "+
"from 学生信息表 inner join 成绩表 on "+
"学生信息表.学号=成绩表.学号 "+
"inner join 课程信息表 on "+
"成绩表.课程代码=课程信息表.课程代码 ";
if(textfield_num.getText().length()>0){
sql+="where 学生信息表.学号 like '"+textfield_num.getText()+"%'";
}
return sql;
}
public void actionPerformed(ActionEvent ae) {
table=dbm.maketable(dbm.select(createsql()));
table.setEnabled(true);
sc.setViewportView(table);
tmodel=(DefaultTableModel)table.getModel();
tmodel.addTableModelListener(new TableModelListener(){
public void tableChanged(TableModelEvent tme) {
//System.out.println(tmodel.getColumnName(tme.getColumn()));
//System.out.println(table.getValueAt(tme.getLastRow(),tme.getColumn()));
//System.out.println(table.getValueAt(tme.getLastRow(),0));
//System.out.println(tmodel.getColumnName(0));
String sql="update 成绩表 set 成绩=? where 学号=? and 课程代码=?";
String[] svar=new String[3];
svar[0]=(String) table.getValueAt(tme.getLastRow(),tme.getColumn());
svar[1]=(String) table.getValueAt(tme.getLastRow(),0);
svar[2]=(String) table.getValueAt(tme.getLastRow(),2);
int n=dbm.update(sql,svar);
//System.out.println(svar[0]+":"+svar[1]+":"+svar[2]);
//updata("update ")
if(n==0){
dbm.error("更新出错!");
table.setValueAt("",tme.getLastRow(),tme.getColumn());
}
}
});
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -