java图像界面ATM模拟程序.docx
- 文档编号:5995698
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:23
- 大小:20.68KB
java图像界面ATM模拟程序.docx
《java图像界面ATM模拟程序.docx》由会员分享,可在线阅读,更多相关《java图像界面ATM模拟程序.docx(23页珍藏版)》请在冰豆网上搜索。
java图像界面ATM模拟程序
packagehxf;
/*创建主程序*/
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.GroupLayout;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.WindowConstants;
classMainFrameextendsJFrame{
publicJButtonchecked;
publicJButtoncunkuan;
publicJButtonquit;
publicJButtonqukuan;
publicJButtonreset;
publicMainFrame(){
//initComponents();
//this.setLocationRelativeTo(null);
initComponents();//初始化窗口
this.setLocationRelativeTo(null);//让窗口处于居中位置
this.setVisible(true);//使窗口显示出来
//this.setVisible(false);
}
/*控件初始化*/
privatevoidinitComponents(){
cunkuan=newJButton();
qukuan=newJButton();
checked=newJButton();
reset=newJButton();
quit=newJButton();
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setTitle("ATM柜员模拟程序");
setName("mianframe");
setResizable(false);
cunkuan.setText("存款");
cunkuan.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
cunkuanActionPerformed(evt);
}
});
qukuan.setText("取款");
qukuan.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
qukuanActionPerformed(evt);
}
});
checked.setText("查询");
checked.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
checkedActionPerformed(evt);
}
});
reset.setText("修改密码");
reset.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
resetActionPerformed(evt);
}
});
quit.setText("退出");
quit.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
quitActionPerformed(evt);
}
});
GroupLayoutlayout=newGroupLayout(getContentPane());//GroupLayout它将组件按层次分组,以决定它们在Container中的位置
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(cunkuan)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,105,Short.MAX_VALUE)
.addComponent(reset))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,layout.createSequentialGroup()
.addComponent(qukuan)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,143,Short.MAX_VALUE)
.addComponent(quit))
.addComponent(checked))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(46,46,46)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(cunkuan)
.addComponent(reset))
.addGap(51,51,51)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(quit)
.addComponent(qukuan))
.addGap(57,57,57)
.addComponent(checked)
.addGap(39,39,39))
);
pack();
}
privatevoidquitActionPerformed(ActionEventevt){
LoginFrameload=newLoginFrame();
load.setVisible(true);
this.setVisible(false);
}
privatevoidresetActionPerformed(ActionEventevt){
Setpwsetpw=newSetpw(null);
setpw.setVisible(true);
this.setVisible(false);
}
privatevoidcheckedActionPerformed(ActionEventevt){
Displaydis=newDisplay(null);
dis.setVisible(true);
this.setVisible(false);
}
privatevoidqukuanActionPerformed(ActionEventevt){
Taketake=newTake(null);
take.setVisible(true);
this.setVisible(false);
}
privatevoidcunkuanActionPerformed(ActionEventevt){
Inputinput=newInput(null);
input.setVisible(true);
this.setVisible(false);
}
}
/*创建账户*/
publicclassAccount{
privateintcount=10000;//初始账户余额10000
privateStringaccount="1";//初始账号
privateStringpassword="1";//初始密码
publicAccount(){
}
publicvoidsetpw(Stringpassword){
this.password=password;
}
publicvoiddeccount(intmoney){
count-=money;//取钱
}
publicvoidreccount(intmoney){
count+=money;//存钱
}
publicintget(){
returncount;
}
publicStringgetaccount(){//账号
returnaccount;
}
publicStringgetpw(){
returnpassword;
}
}
packagehxf;
importjava.awt.BorderLayout;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjavax.swing.ImageIcon;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JPanel;
importjavax.swing.JTextField;
importjavax.swing.WindowConstants;
/*显示余额界面*/
publicclassDisplayextendsJFrame{
publicJButtonback;
privateJLabeljL1;
publicJTextFieldjT1;
publicJButtonquit;
publicJButtonqukuan;
AccountmyAccount;//这个是便以传数值的
publicDisplay(Accountmyaccount){
this.myAccount=myaccount;
initComponents();//初始化窗口,就是把窗口画出来
jT1.setText(String.valueOf(myaccount.get()));//获得用户为标题
this.setLocationRelativeTo(null);
this.setVisible(true);
}
publicvoidset(Stringstr){
jT1.setText(str);
}
privatevoidinitComponents(){
jL1=newJLabel();
jT1=newJTextField(15);
quit=newJButton();
back=newJButton();
back.setIcon(newImageIcon("xiaofangImage/back.png"));
qukuan=newJButton();
qukuan.setIcon(newImageIcon("xiaofangImage/qukuan.png"));
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
jL1.setText("您的余额为:
");
jL1.setIcon(newImageIcon("xiaofangImage/money.png"));
jT1.setEditable(false);
quit.setText("退出");
quit.setIcon(newImageIcon("xiaofangImage/exit.png"));
JPanelp1=newJPanel();
p1.add(jL1);
p1.add(jT1);
JPanelp2=newJPanel();
JPanelp3=newJPanel();
JPanelp4=newJPanel();
JPanelp5=newJPanel();
p3.add(qukuan);
p4.add(back);
p5.add(quit);
p2.setLayout(newGridLayout(3,1));//把它分成3行1列
p2.add(p3);
p2.add(p4);
p2.add(p5);
this.getContentPane().add(p1,BorderLayout.NORTH);//放在北方
this.getContentPane().add(p2,BorderLayout.CENTER);//放在下面
this.setSize(300,270);
//以上是使用jpanel混合布局,三个JPanel分为3行1列,再把p1,放在北方,p2,放在下面
quit.addActionListener(newjava.awt.event.ActionListener(){//退出按钮的事件,只要点它,就关闭窗口了
publicvoidactionPerformed(java.awt.event.ActionEventevt){
quitActionPerformed(evt);
}
});
back.setText("返回");//返回按钮的事件,只要点它,就让当前的窗口不可见
back.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
backActionPerformed(evt);
}
});
qukuan.setText("取款");//取款按钮的事件
qukuan.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
qukuanActionPerformed(evt);
}
});
}
privatevoidqukuanActionPerformed(ActionEventevt){
newTake(myAccount);//出现一个取款窗口,并让当前窗口不可见
this.setVisible(false);
}
privatevoidquitActionPerformed(ActionEventevt){
this.dispose();//也是让自己不可见
}
privatevoidbackActionPerformed(ActionEventevt){
this.setVisible(false);//当自己不可见
}
}
packagehxf;
importjava.awt.BorderLayout;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JPanel;
importjavax.swing.JTextField;
importjavax.swing.WindowConstants;
classInputextendsJFrame{
privateJButtonclear;
privateJButtoncommit;
privateJLabeljL1;
privateJTextFieldjT1;
Stringstr="";
privateAccountmyAccount;
publicInput(AccountmyAccount){
this.myAccount=myAccount;
initComponents();
this.setVisible(true);
this.setLocationRelativeTo(null);
this.setResizable(false);
}
privatevoidinitComponents(){
jL1=newJLabel();
jT1=newJTextField(15);
commit=newJButton();
clear=newJButton();
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
jL1.setText("存款金额:
");
commit.setText("确认");
commit.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
commitActionPerformed(evt);
}
});
clear.setText("清除");
JPanelp1=newJPanel();
JPanelp2=newJPanel();
p1.add(jL1);
p1.add(jT1);
p2.add(commit);
p2.add(clear);
JPanelp3=newJPanel();
//分为2行1列
p3.setLayout(newGridLayout(2,1,20,30));
p3.add(p1);
p3.add(p2);
this.getContentPane().add(p3,BorderLayout.CENTER);
this.setSize(300,270);
clear.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
clearActionPerformed(evt);
}
});
}
privatevoidclearActionPerformed(ActionEventevt){
str="";
jT1.setText(str);
}
privatevoidcommitActionPerformed(java.awt.event.ActionEventevt){
if(Integer.parseInt(jT1.getText())%100==0){
//数值不能是字符,必须是100的倍数
inta=Integer.parseInt(jT1.getText());
if(a<0)
JOptionPane.showMessageDialog(null,"存款不能为负数","出错",1);
else
myAccount.reccount(a);
intresult=javax.swing.JOptionPane.showConfirmDialog(null,
"是否显示余额?
","",javax.swing.JOptionPane.YES_NO_OPTION,
javax.swing.JOptionPane.QUESTION_MESSAGE);
if(result==javax.swing.JOptionPane.YES_OPTION){
str="";
jT1.setText(str);
newDisplay(myAccount);
this.setVisible(false);
}else{
newMainFrame();
this.setVisible(false);
}
}else{
JOptionPane.showMessageDialog(null,
"存款金额必须为100的整数倍!
"+"\n请确认你的金额","出错提示",1);
jT1.setText("");
}
}
}
packagehxf;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.Ac
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 图像 界面 ATM 模拟 程序