📄 goodsbuy.java
字号:
// GoodsBuy.java
package classFile;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.sql.*;
class GoodsBuy extends JPanel implements ActionListener, ItemListener
{
// 物品购置支出
private JLabel titleLabel, remarkLabel, payWay;
private JLabel goodsNameL, priceL, countL, dateL, allmoneyL;
private JRadioButton bank1, bank2, bank3, bank4, bank5;
private JTextField nameT, priceT, countT;
private JComboBox yearText, monthText, dayText;
private JTextField allmoneyT;
private JButton okB, resetB, cancel;
private ButtonGroup buttonGroup;
private String sql;
private JTextArea remarkArea;
private JScrollPane remarkScroll;
//
private final String years[] = new String[100];
private final String months[] = new String[12];
private final String days[] = new String[31];
//
private JLabel flag1 = new JLabel("*", JLabel.CENTER);
private JLabel flag2 = new JLabel("*", JLabel.CENTER);
private JLabel flag3 = new JLabel("*", JLabel.CENTER);
private JLabel flag4 = new JLabel("*", JLabel.CENTER);
private JLabel flag5 = new JLabel("*", JLabel.CENTER);
private String banks = new String("中国人民银行");
public GoodsBuy()
{
// 初始化变量
Long k = 1951L;
for (int i=0; i<100; i++) {
years[i] = k.toString();
k++;
}
k = 1L;
for (int i=0; i<12; i++) {
months[i] = k.toString();
k++;
}
k = 1L;
for (int i=0; i<31; i++) {
days[i] = k.toString();
k++;
}
//
setBackground(new Color(100, 200, 100));
setLayout(null);
titleLabel = new JLabel("物品购置支出", JLabel.CENTER);
titleLabel.setFont(new Font("华文琥珀", Font.PLAIN, 30));
goodsNameL = new JLabel("物品名 : ", JLabel.RIGHT);
priceL = new JLabel("单价(元) : ", JLabel.RIGHT);
countL = new JLabel("数量(件) : ", JLabel.RIGHT);
dateL = new JLabel("日期 : ", JLabel.RIGHT);
remarkLabel = new JLabel("备注 : ", JLabel.RIGHT);
payWay = new JLabel("支付方式 : ", JLabel.LEFT);
okB = new JButton("提交");
resetB = new JButton("重置");
cancel = new JButton("退出");
allmoneyL = new JLabel("总额(元) : ", JLabel.RIGHT);
allmoneyT = new JTextField(20);
nameT = new JTextField(30);
priceT = new JTextField(20);
countT = new JTextField(20);
yearText = new JComboBox(years);
monthText = new JComboBox(months);
dayText = new JComboBox(days);
remarkArea = new JTextArea();
remarkScroll = new JScrollPane(remarkArea);
buttonGroup = new ButtonGroup();
bank1 = new JRadioButton("中国人民银行");
bank2 = new JRadioButton("中国工商银行");
bank3 = new JRadioButton("中国建设银行");
bank4 = new JRadioButton("中国交通银行");
bank5 = new JRadioButton("中国农业银行");
Font font = new Font("隶书", Font.PLAIN, 15);
goodsNameL.setFont(font);
priceL.setFont(font);
countL.setFont(font);
dateL.setFont(font);
remarkLabel.setFont(font);
Font font1 = new Font("隶书", Font.PLAIN, 14);
okB.setFont(font1);
resetB.setFont(font1);
cancel.setFont(font1);
payWay.setFont(font);
allmoneyL.setFont(font);
Color color = new Color(100, 200, 100);
bank1.setBackground(color);
bank2.setBackground(color);
bank3.setBackground(color);
bank4.setBackground(color);
bank5.setBackground(color);
Font font2 = new Font("宋体", Font.PLAIN, 15);
flag1.setFont(font2);
flag2.setFont(font2);
flag3.setFont(font2);
flag4.setFont(font2);
flag5.setFont(font2);
titleLabel.setBounds(190, 20, 300, 50);
goodsNameL.setBounds(100, 100, 100, 25);
priceL.setBounds(100, 130, 100, 25);
countL.setBounds(100, 160, 100, 25);
allmoneyL.setBounds(100, 190, 100, 25);
dateL.setBounds(100, 220, 100, 25);
remarkLabel.setBounds(100, 250, 100, 25);
payWay.setBounds(500, 70, 100, 25);
bank1.setBounds(500, 100, 100, 25);
bank2.setBounds(500, 130, 100, 25);
bank3.setBounds(500, 160, 100, 25);
bank4.setBounds(500, 190, 100, 25);
bank5.setBounds(500, 220, 100, 25);
flag1.setBounds(410, 100, 10, 20);
flag2.setBounds(410, 130, 10, 20);
flag3.setBounds(410, 160, 10, 20);
flag4.setBounds(410, 190, 10, 20);
flag5.setBounds(410, 220, 10, 20);
nameT.setBounds(200, 100, 200, 20);
priceT.setBounds(200, 130, 200, 20);
countT.setBounds(200, 160, 200, 20);
allmoneyT.setBounds(200, 190, 200, 20);
yearText.setBounds(200, 220, 80, 20);
monthText.setBounds(280, 220, 60, 20);
dayText.setBounds(340, 220, 60, 20);
remarkScroll.setBounds(200, 250, 300, 100);
okB.setBounds(200, 420, 60, 20);
resetB.setBounds(320, 420, 60, 20);
cancel.setBounds(440, 420, 60, 20);
JPanel jpanel = new JPanel();
jpanel.setBounds(200, 240, 400, 400);
buttonGroup.add(bank1);
buttonGroup.add(bank2);
buttonGroup.add(bank3);
buttonGroup.add(bank4);
buttonGroup.add(bank5);
bank1.setSelected(true);
add(titleLabel);
add(goodsNameL);
add(priceL);
add(countL);
add(allmoneyL);
add(dateL);
add(remarkLabel);
add(nameT);
add(priceT);
add(countT);
add(allmoneyT);
add(yearText);
add(monthText);
add(dayText);
add(remarkScroll);
add(bank1);
add(bank2);
add(bank3);
add(bank4);
add(bank5);
add(okB);
add(resetB);
add(payWay);
add(cancel);
this.add(flag1);
this.add(flag2);
this.add(flag3);
this.add(flag4);
this.add(flag5);
cancel.addActionListener(this);
resetB.addActionListener(this);
okB.addActionListener(this);
bank1.addItemListener(this);
bank2.addItemListener(this);
bank3.addItemListener(this);
bank4.addItemListener(this);
bank5.addItemListener(this);
}
// 空白检查
private boolean checkBlank(String info[])
{
for (int i=0; i<info.length-1; i++)
{
if (info[i].equals(""))
{
return false;
}
}
return true;
}
//
public void itemStateChanged(ItemEvent evnet)
{
if (bank1.isSelected())
{
banks = "中国人民银行";
}
else if (bank2.isSelected())
{
banks = "中国工商银行";
}
else if (bank3.isSelected())
{
banks = "中国建设银行";
}
else if (bank4.isSelected())
{
banks = "中国交通银行";
}
else if (bank5.isSelected())
{
banks = "中国农业银行";
}
}
//
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == cancel)
{
System.exit(0);
}
else if (e.getSource() == okB)
{
String dater = years[yearText.getSelectedIndex()] + "-"
+ months[monthText.getSelectedIndex()] + "-"
+ days[dayText.getSelectedIndex()];
String info[] = new String[6];
info[0] = nameT.getText().trim();
info[1] = priceT.getText().trim();
info[2] = countT.getText().trim();
info[3] = allmoneyT.getText().trim();
info[4] = dater;
info[5] = remarkArea.getText().trim();
if (checkBlank(info))
{
try
{
sql = new String("insert into buyGoods values(?,?,?,?,?,?,?)");
VisitData visiter = new VisitData();
visiter.DBLind(sql);
visiter.pre.setString(1, info[0]);
visiter.pre.setString(2, info[1]);
visiter.pre.setString(3, info[2]);
visiter.pre.setString(4, info[3]);
visiter.pre.setString(5, info[4]);
visiter.pre.setString(6, info[5]);
visiter.pre.setString(7, banks);
visiter.pre.executeUpdate();
JOptionPane.showMessageDialog(null, "信息已经保存!!");
setBlank();
}
catch(Exception e1)
{
JOptionPane.showMessageDialog(null, "数据被破坏!!");
e1.printStackTrace();
}
}
else
{
JOptionPane.showMessageDialog(null, "带星号的输入不能为空!!");
}
}
else
{
setBlank();
}
}
// 清空
private void setBlank()
{
nameT.setText("");
priceT.setText("");
countT.setText("");
yearText.setSelectedIndex(0);
monthText.setSelectedIndex(0);
dayText.setSelectedIndex(0);
remarkArea.setText("");
allmoneyT.setText("");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -