⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 goodsbuy.java

📁 财务管理子系统-支出系统
💻 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 + -