java+modify(_chufangModify.java

import java.awt.Color;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.ItemEvent;

import java.awt.event.ItemListener;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import javax.swing.DefaultCellEditor;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JComboBox;

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;

import javax.swing.border.TitledBorder;

import javax.swing.event.DocumentEvent;

import javax.swing.event.DocumentListener;

import javax.swing.table.DefaultTableModel;

import javax.swing.table.TableColumn;

public class chufangModify extends JFrame implements ActionListener,ItemListener{

JButton button6=new JButton("增加");

JButton button7=new JButton("确定");

JButton button8=new JButton("删除");

private String columnNames[]={"编码","名称","单价","数量","计数单位","类别","档案编号"};

private String columnNames1[]={"编码","名称","单价","计数单位","类别"};

private JLabel la0;

private JComboBox box1,box2 ;

JPanel panel2=new JPanel();

public static JTable table2,table3;

public static DefaultTableModel dtm2,dtm3;

private JScrollPane JScrollPane3=new JScrollPane();

private JScrollPane JScrollPane5=new JScrollPane();

String y;

SqlLogin.jdbc connect=new SqlLogin().new jdbc();

chufangModify(String Stitle){

super(Stitle);

panel2.setLayout(null);

ImageIcon ic; //按钮图片

ic = new ImageIcon("F:/课程设计/right_bg.jpg");

JLabel label = new JLabel(ic);//把背景图片显示在一个标签里面

dtm2=new DefaultTableModel(columnNames,0){//dtm2是项目收费表格模版

public boolean isCellEditable(int row, int column)

{

if(column==1||column==3) return true;//这个是可以编辑的列

//if(rowIndex!=0) return false;

return false;

}//表格不允许被编辑 }

};

String fontSize1[] = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "12"};

table2 = new JTable(dtm2);//JScrollPane4 项目表

JScrollPane JScrollPane4 = new JScrollPane(table2);

TableColumn a1 = table2.getColumn("名称");

TableColumn a2 = table2.getColumn("数量");

JTextField box3 = new JTextField();

box2 = new JComboBox(fontSize1);

box2.addActionListener(this);

box2.addItemListener(this);

box3.getDocument().addDocumentListener(new DocumentListener()

{

@Override

public void removeUpdate(DocumentEvent e) {

System.out.println("removeUpdate");

updata_combobox();

}

@Override

public void insertUpdate(DocumentEvent e) {

System.out.println("insertUpdate");

updata_combobox();

}

@Override

public void changedUpdate(DocumentEvent e) {

updata_combobox();

}

private void updata_combobox(){

String s1=null;

s1=box3.getText();

String sql="select * from Price where PeName like '%"+s1+"%'and PeClass='其他类'" ;

databaseSearch1(sql,5);

}

});

box3.setEditable(true);

DefaultCellEditor dce2 = new DefaultCellEditor(box3);

a1.setCellEditor(dce2);

box2.setEditable(true);box2.setMaximumRowCount(5);

DefaultCellEditor dce3 = new DefaultCellEditor(box2);

a2.setCellEditor(dce3);

box2.addActionListener(this);

final JPanel panel = new JPanel();

panel.setLayout(null);

panel.setBorder(new TitledBorder(null, "诊疗项目单", TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, null, null));

panel.setBounds(20, 150,530, 180);

panel.setBackground(Color.WHITE);

panel.add(JScrollPane4);

JScrollPane4.setBounds(10,20, 400, 150);

panel2.add(panel);

button6.setBounds(420, 20, 100, 40);

panel.add(button6);

button7.setBounds(420, 70, 100, 40);

panel.add(button7);

button8.setBounds(420, 120, 100, 40);

panel.add(button8);

button6.addActionListener(this);

button7.addActionListener(this);

button8.addActionListener(this);

dtm3=new DefaultTableModel(columnNames1,0);// 项目明细表

table3=new JTable(dtm3){

public boolean isCellEditable(int row, int column)

{

return false;

}//表格不允许被编辑 }

};

JScrollPane5.setViewportView(table3);

panel2.add(JScrollPane5);

JScrollPane5.setBounds(30, 50, 400, 100);

JScrollPane5.setVisible(false);

String SQL1="select * from Price where PeClass='其他类'" ;

databaseSearch1(SQL1,5);

JScrollPane4.setViewportView(table2);

box3.addMouseListener(new MouseAdapter() {//设置TABLE双击鼠标事件

public void mouseClicked(MouseEvent e) {

if (e.getButton() == MouseEvent.BUTTON1) // 单击鼠标左键

JScrollPane5.setVisible(true);

}

});

button8.addMouseListener(new MouseAdapter(){ //删除按钮实现删除记录的功能

public void mouseClicked(MouseEvent e) {

int row= table2.getSelectedRow();//这句选择要删除的行

Connection con;

con=connect.getConnection();

Statement stmt;

String val = (String) table2.getValueAt(row, 6);

String val1 = (String) table2.getValueAt(row, 0);

String sql="delete from DrugTable where MrId='"+val+"'and PeNo='"+val1+"'";

try {

stmt = con.createStatement();

stmt.executeUpdate(sql);

button6.setEnabled(true);

JOptionPane.showMessageDialog(null," 删除成功!","注意",JOptionPane.INFORMATION_MESSAGE);

}catch (SQLException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

if(row!=-1){ //这句判断是否有选中的行

dtm2.removeRow(row); } //这句删除指定行

}

});

table3.addMouseListener(new MouseAdapter() {//设置TABLE双击鼠标事件

public void mouseClicked(MouseEvent e) {

if (e.getButton() == MouseEvent.BUTTON1) // 单击鼠标左键

if (e.getClickCount() == 2) {

int o=table3.getSelectedRow();

int row=table2.getSelectedRow();

String ao=(String) table3.getValueAt(o, 1);

String bo=(String) table3.getValueAt(o, 0);

String co=(String) table3.getValueAt(o, 2);

String eo=(String) table3.getValueAt(o, 4);

String qo=(String) table3.getValueAt(o, 3);

System.out.println(ao);

box3.setText(ao);

table2.setValueAt(bo, row, 0);

table2.setValueAt(co, row, 2);

table2.setValueAt(eo, row, 5);

table2.setValueAt(qo, row, 4);

y=co;

JScrollPane5.setVisible(false);

}

}

});

panel2.add(label);

label.setBounds(0, 0, 600, 400);

this.add(panel2);

this.setSize(600,400); //设置窗口大小

this.setResizable(false); //设置不可调整窗口大小

this.setLocationRelativeTo(null);

this.setVisible(true);

}

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(e.getSource()==button7){

try{

String s=(String)box2.getSelectedItem();

int i= Integer.valueOf(s).intValue();

Connection con;

con=connect.getConnection();

int row=table2.getSelectedRow();

String b= (String)table2.getValueAt(row, 3);

String sql="INSERT INTO DrugTable(PeNo,PeName,PePrice,PeNumber,PeUnit,PeClass,MrId)VALUES(?,?,?,?,?,?,?)";

PreparedStatement parepare=con.prepareStatement(sql);

parepare.setString(1, (String) table2.getValueAt(row, 0));

parepare.setString(2, (String) table2.getValueAt(row, 1));

parepare.setString(3, (String) table2.getValueAt(row, 2));

parepare.setString(4, (String) table2.getValueAt(row, 3));

parepare.setString(5, (String) table2.getValueAt(row, 4));

parepare.setString(6, (String) table2.getValueAt(row, 5));

parepare.setString(7, (String) table2.getValueAt(row, 6));

if(i<=0||b==""){

JOptionPane.showMessageDialog(null, "数量不能小于0或为空","错误",JOptionPane.INFORMATION_MESSAGE);

}

else{

parepare.executeUpdate();

JOptionPane.showMessageDialog(null, "录入成功","录入成功",JOptionPane.INFORMATION_MESSAGE);

button6.setEnabled(true);

}

}catch(Exception et){

et.printStackTrace();

}

}

}

public void databaseSearch1(String SQL1, int i) {

// TODO Auto-generated method stub

Connection con;

con=connect.getConnection();

ResultSet rs;

try{

int rowcount = dtm3.getRowCount() - 1;

if (rowcount != -1) {

for (int i1 = rowcount; i1 >= 0; i1--) {

dtm3.removeRow(i1); // 删除Jtable中的所有行

}

dtm3.setRowCount(0); // 将Jtable中的行数设为零

}

Statement stmt=con.createStatement();

rs=stmt.executeQuery(SQL1);

String[] data = new String[5];

while (rs.next()) {

for (int j = 1; j <= 5; j++) {

data[j - 1] = rs.getString(j); // 取出数据库中的数组装载到数组中

}

dtm3.addRow(data); // 在Jtabl

}

con.close();

//设置表格隔行背景色(隔行背景色不同)

}catch(Exception err){

}

}

public void addrow(JTable table) {

// TODO Auto-generated method stub

int row=table.getSelectedRow();

String b=(String) table.getValueAt(row,0);

button6.addActionListener(new ActionListener(){//添加事件

public void actionPerformed(ActionEvent e){

String []da1={"",""};

String []rowValues =da1;

dtm2.addRow(rowValues); //添加一行

int row1 = table2.getRowCount()-1;

table2.setRowSelectionInterval(row1, row1);

table2.setValueAt(b, row1, 6);

button6.setEnabled(false);

}

});

}

public void databaseSearch2(String SQL, int i) {

// TODO Auto-generated method stub

Connection con;

con=connect.getConnection();

ResultSet rs;

try{

int rowcount = dtm2.getRowCount() - 1;

if (rowcount != -1) {

for (int i1 = rowcount; i1 >= 0; i1--) {

dtm2.removeRow(i1); // 删除Jtable中的所有行

}

dtm2.setRowCount(0); // 将Jtable中的行数设为零

}

Statement stmt=con.createStatement();

rs=stmt.executeQuery(SQL);

String[] data = new String[7];

while (rs.next()) {

for (int j = 1; j <= 7; j++) {

data[j - 1] = rs.getString(j); // 取出数据库中的数组装载到数组中

}

dtm2.addRow(data); // 在Jtabl

}

con.close();

//设置表格隔行背景色(隔行背景色不同)

}catch(Exception err){

}

}

@Override

public void itemStateChanged(ItemEvent e) {

// TODO Auto-generated method stub

}

}

一键复制

编辑

Web IDE

原始数据

按行查看

历史

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值