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

📄 workframe.java

📁 简易银行卡管理系统作为ATM的模拟系统
💻 JAVA
字号:
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;

public class WorkFrame extends JFrame implements ActionListener {

	private static final long serialVersionUID = 1L;
	private User u;
	private LoginFrame loginFrame;
	private JMenuBar menuBar;
	private JMenu file;
	private JMenu user;
	private JMenuItem deposit;
	private JMenuItem drawing;
	private JMenuItem query;
	private JMenuItem logout;
	private JMenuItem reportLose;
	private JMenuItem exit;
	private JTextArea info;

	public WorkFrame(LoginFrame loginFrame, User u) {
		this.u = u;
		this.loginFrame = loginFrame;
		menuBar = new JMenuBar();
		file = new JMenu("File");
		user = new JMenu("User");
		deposit = new JMenuItem("存款");
		drawing = new JMenuItem("取款");
		query = new JMenuItem("查询");
		logout = new JMenuItem("注销");
		reportLose = new JMenuItem("挂失");
		exit = new JMenuItem("退出");

		deposit.addActionListener(this);
		drawing.addActionListener(this);
		query.addActionListener(this);
		logout.addActionListener(this);
		reportLose.addActionListener(this);
		exit.addActionListener(this);

		info = new JTextArea("");
		info.setEditable(false);
		showInfo();
		menuBar.add(file);
		menuBar.add(user);
		file.add(exit);
		user.add(deposit);
		user.add(drawing);
		user.add(query);
		user.add(reportLose);
		user.add(logout);
		this.setLayout(new BorderLayout());
		this.add(info, BorderLayout.CENTER);
		this.setJMenuBar(menuBar);
		this.setSize(300, 240);
	}

	@Override
	public void actionPerformed(ActionEvent event) {
		String command = event.getActionCommand();
		if (command.equals(deposit.getText())) {
			deposit();
		} else if (command.equals(drawing.getText())) {
			drawing();
		} else if (command.equals(query.getText())) {
			showInfo();
			info.append("身份证:\t"+u.getUserid()+"\n");
		} else if (command.equals(reportLose.getText())) {
			reportLose();
		} else if (command.equals(logout.getText())) {
			logout();
		} else if (command.equals(exit.getText())) {
			System.exit(0);
		}

	}

	private void logout() {
		if (Const.logout(u)) {
			JOptionPane
					.showMessageDialog(this, "用户" + u.getUsername() + "已注销!");
			this.setVisible(false);
			loginFrame.setVisible(true);
		} else
			JOptionPane.showMessageDialog(this, "注销失败!");
	}

	private void reportLose() {
		u.setFlag(1);
		if (Const.reportLose(u)) {
			JOptionPane
					.showMessageDialog(this, "用户" + u.getUsername() + "已挂失!");
		} else {
			JOptionPane.showMessageDialog(this, "挂失失败!");
			u.setFlag(0);
		}
		showInfo();
	}

	private void drawing() {// 取款
		String s = JOptionPane.showInputDialog(this, "请输入取款金额:");
		if ("".equals(s) && s == null)
			JOptionPane.showMessageDialog(this, "请输入大于零的数字!");
		double sum = -1;
		try {
			sum = Double.parseDouble(s);
		} catch (NumberFormatException e) {
			JOptionPane.showMessageDialog(this, "请输入大于零的合法数字!");
		}
		if (sum > 0) {
			if (sum <= u.getMoney()) {
				double d = u.getMoney();
				u.setMoney(d - sum);
				if (Const.updateMoney(u)) {
					JOptionPane.showMessageDialog(this, "取款成功!");
				} else {
					u.setMoney(d);
					JOptionPane.showMessageDialog(this, "取款失败!");
				}
			} else
				JOptionPane.showMessageDialog(this, "余额不足!");
		}
		showInfo();
	}

	private void deposit() {
		String s = JOptionPane.showInputDialog(this, "请输入取款金额:");
		if ("".equals(s) && s == null)
			JOptionPane.showMessageDialog(this, "请输入大于零的数字!");
		double sum = -1;
		try {
			sum = Double.parseDouble(s);
		} catch (NumberFormatException e) {
			JOptionPane.showMessageDialog(this, "请输入大于零的合法数字!");
		}
		if (sum > 0) {
			double d = u.getMoney();
			u.setMoney(d + sum);
			if (Const.updateMoney(u)) {
				JOptionPane.showMessageDialog(this, "存款成功!");
			} else {
				u.setMoney(d);
				JOptionPane.showMessageDialog(this, "存款失败!");
			}
		}
		showInfo();
	}

	private void showInfo() {
		String s = "帐号:\t" + u.getAccount() + "\n" + "用户名:\t" + u.getUsername()
				+ "\n" + "余额:\t" + u.getMoney() + "\n";
		if (u.getFlag() == 0)
			s += "用户状态:\t激活\n";
		else
			s += "用户状态:\t 挂失\n";
		info.setText(s);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -