📄 checkout.java
字号:
package supermarket;
import DB.*;
import javax.swing.*;
import java.awt.*;
import javax.swing.border.Border;
import javax.swing.border.TitledBorder;
import com.borland.jbcl.layout.XYLayout;
import com.borland.jbcl.layout.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.lang.NumberFormatException;
import java.awt.event.KeyEvent;
import java.awt.event.KeyAdapter;
public class Checkout
extends JDialog {
MainFrm fr;
public Checkout(String shopname, boolean huiyuan, float zhek, float price,MainFrm fr) {
try {
this.fr=fr;
jbInit();
if (huiyuan) {
if (zhek == 9.5) {
shopname += "该会员为普通会员\n折扣率为:9.5折\n";
}
else {
shopname += "该会员为高级会员\n折扣率为:9 折\n";
}
}
this.price = price;
shopname += "本次消费:" + price + "元";
taxdisplay.setText(shopname);
}
catch (Exception ex) {
ex.printStackTrace();
}
}
private void jbInit() throws Exception {
lbltitle.setFont(new java.awt.Font("Dialog", Font.PLAIN, 25));
lbltitle.setText("结 帐");
lbltitle.setBounds(new Rectangle(137, 5, 127, 48));
this.getContentPane().setLayout(null);
txtmoney.setFont(new java.awt.Font("Dialog", Font.PLAIN, 20));
txtmoney.setText("");
txtmoney.setBounds(new Rectangle(27, 318, 379, 25));
txtmoney.addKeyListener(new Checkout_txtmoney_keyAdapter(this));
jButton1.setBounds(new Rectangle(319, 4, 85, 29));
jButton1.setFont(new java.awt.Font("Dialog", Font.PLAIN, 18));
jButton1.setText("找补");
jButton1.addActionListener(new Checkout_jButton1_actionAdapter(this));
jScrollPane1.setBounds(new Rectangle(26, 83, 380, 207));
taxdisplay.setText("jTextArea1");
this.setTitle("结帐");
jPanel1.setBorder(BorderFactory.createEtchedBorder());
jPanel1.setBounds(new Rectangle(5, 11, 432, 40));
jPanel1.setLayout(null);
jPanel2.setBorder(border4);
jPanel2.setBounds(new Rectangle(5, 53, 432, 301));
jPanel2.setLayout(null);
jPanel3.setBorder(BorderFactory.createEtchedBorder());
jPanel3.setBounds(new Rectangle(5, 351, 432, 33));
jPanel3.setLayout(null);
this.getContentPane().add(lbltitle, null);
this.getContentPane().add(txtmoney);
this.getContentPane().add(jScrollPane1);
jScrollPane1.getViewport().add(taxdisplay);
this.getContentPane().add(jPanel1);
this.getContentPane().add(jPanel2);
this.getContentPane().add(jPanel3);
jPanel3.add(jButton1);
txtmoney.setHorizontalAlignment(JTextField.RIGHT); //文本右对齐
this.setModal(true);
}
JLabel lbltitle = new JLabel();
Border border1 = BorderFactory.createEtchedBorder(Color.white,
new Color(165, 163, 151));
Border border2 = new TitledBorder(border1, "总汇");
JTextField txtmoney = new JTextField();
JButton jButton1 = new JButton();
float price = 0;
JScrollPane jScrollPane1 = new JScrollPane();
JTextArea taxdisplay = new JTextArea();
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
Border border3 = BorderFactory.createEtchedBorder(Color.white,
new Color(148, 145, 140));
Border border4 = new TitledBorder(border3, "清单");
JPanel jPanel3 = new JPanel();
public void jButton1_actionPerformed(ActionEvent e) {
String money = txtmoney.getText().trim();
if (money.equals("")) { //判断金额框是否为空
JOptionPane.showMessageDialog(null, "请输入支付金额!", "错误",
JOptionPane.ERROR_MESSAGE);
return;
}
try {
float my = Float.parseFloat(money);
my -= price;
if (my < 0) {//判断支付金额是否比消费金额少
JOptionPane.showMessageDialog(null, "金额不足!", "错误",
JOptionPane.ERROR_MESSAGE);
return;
}
JOptionPane.showMessageDialog(null, "应找补:" + my + "元"); //找补提示
fr.clear();
this.dispose();//关闭当前
}
catch (NumberFormatException ex) { //确认金额输入是否正确
JOptionPane.showMessageDialog(null, "请正确输入,金额不可以为:" + money, "错误",
JOptionPane.ERROR_MESSAGE);
return;
}
}
public void txtmoney_keyPressed(KeyEvent e) {
if((int)e.getKeyChar()==10){
jButton1_actionPerformed(null);
}
}
}
class Checkout_txtmoney_keyAdapter
extends KeyAdapter {
private Checkout adaptee;
Checkout_txtmoney_keyAdapter(Checkout adaptee) {
this.adaptee = adaptee;
}
public void keyPressed(KeyEvent e) {
adaptee.txtmoney_keyPressed(e);
}
}
class Checkout_jButton1_actionAdapter
implements ActionListener {
private Checkout adaptee;
Checkout_jButton1_actionAdapter(Checkout adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -