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

📄 bank.java

📁 java 编程 关于银行管理方面的程序 很有实用性 而且是第一次使用
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                               //   银行定期储蓄管理系统
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;

class MoneyFrame extends JFrame implements ItemListener{
JMenuBar mb=new JMenuBar();
JPanel acpanel=new  JPanel();
JPanel takepanel =new JPanel ();
JPanel promptpanel=new JPanel();
JTextField prompt =new JTextField(90);
JLabel aclabel =new JLabel("用户存款信息",JLabel.CENTER);
JLabel takelabel =new JLabel("用户取款信息",JLabel.CENTER);
JPanel tablepanel1=new JPanel();
JPanel tablepanel2=new JPanel();
JLabel[]heading1=new JLabel[10];
JLabel[]heading2=new JLabel[4];
JScrollPane sp ;
JCheckBox gua=new JCheckBox("是",false); 
JComboBox category=new JComboBox();
JTextField[]accountField=new JTextField[8];  
JTextField[]takeField=new JTextField[4]; 
OneUser asd=new OneUser();  
FileNameDialog dialogs= new  FileNameDialog();
int acdate=0, tadate=0;  
int sign=1;  //当前状态  1为已贮存 

MoneyFrame(){
super("银行定期储蓄管理系统");
//创建"新建存款文件"菜单项图标
Icon new1Icon=new ImageIcon("new1.gif","新建存款文件");
//创建"新建取款文件"菜单项图标
Icon new2Icon=new ImageIcon("new2.gif","新建取款文件");
//创建"open"菜单项图标
Icon openIcon =new ImageIcon("open.gif","open");
Icon saveIcon=new  ImageIcon("save.gif","save");
JMenu fileMenu = new JMenu("文件");  //创建"文件"菜单
 fileMenu.setFont(new Font("楷体_GB2312",Font.PLAIN,20));
 
 JMenuItem newMI1st= new JMenuItem("新建存款文件",new1Icon);    //创建"新建存款文件"菜单项
 JMenuItem newMI2st= new JMenuItem("新建取款文件",new2Icon);    //创建"新建取款文件"菜单项
    JMenuItem openMI = new JMenuItem("打开", openIcon);  //创建"打开"菜单项
    JMenuItem saveMI = new JMenuItem("保存",saveIcon);  //创建"保存"菜单项
    JMenuItem exitMI = new JMenuItem("退出", 'x');  //创建"退出"菜单项,它有助记键x
    
fileMenu.add(newMI1st);   fileMenu.add(newMI2st);   fileMenu.add(openMI);      
fileMenu.add(saveMI);
    fileMenu.addSeparator();  //添加分隔线
    fileMenu.add(exitMI);
  newMI1st.setFont(new Font("楷体_GB2312",Font.BOLD,20));
newMI2st.setFont(new Font("楷体_GB2312",Font.BOLD,20));
openMI.setFont(new Font("楷体_GB2312",Font.BOLD,20));
saveMI.setFont(new Font("楷体_GB2312",Font.BOLD,20));
exitMI.setFont(new Font("楷体_GB2312",Font.BOLD,20));

 //为'新建存款文件'菜单项安装动作监听器
    NewAccListener nfl=new NewAccListener();   newMI1st.addActionListener(nfl);

 //为'新建取款文件'菜单项安装动作监听器 
   NewtakeFieldListener ntl=new NewtakeFieldListener();   newMI2st.addActionListener(ntl);
    
  //为'打开'菜单项安装动作监听器
   OpenListener ol = new OpenListener();  openMI.addActionListener(ol);
   //为'保存'菜单项安装动作监听器
   SaveListener sl = new SaveListener();  saveMI.addActionListener(sl);
   //为'退出'菜单项安装动作监听器
   exitMI.addActionListener(new ExitListener());         
                                                             
    
    mb.add(fileMenu);       //将'文件'菜单加入菜单条
    setJMenuBar(mb);       //将菜单条加入窗口
    
    //设计存款表格的面板
   acpanel.setBounds(30,0,600,25);
    acpanel.add(aclabel);
    aclabel.setFont(new Font("华文彩云",Font.BOLD,17));
    tablepanel1.setBounds(30,28,600,270);
    tablepanel1.setLayout(new GridLayout(5,4));
      heading1[0]=new  JLabel("姓名",JLabel.CENTER);
      heading1[1]=new  JLabel("密码",JLabel.CENTER);
      heading1[2]=new  JLabel("账号",JLabel.CENTER);
      heading1[3]=new  JLabel("地址",JLabel.CENTER);
      heading1[4]=new  JLabel("本金",JLabel.CENTER);
      heading1[5]=new  JLabel("储种",JLabel.CENTER);
      heading1[6]=new  JLabel("存款日期",JLabel.CENTER);
      heading1[7]=new  JLabel("挂失",JLabel.CENTER);
      heading1[8]=new  JLabel("挂失日期",JLabel.CENTER);
      heading1[9]=new  JLabel("营业员",JLabel.CENTER);
      for(int i=0;i< heading1.length;i++){heading1[i].setFont(new Font("楷体_GB2312",Font.PLAIN,20));
      heading1[i].setForeground(Color.blue);}
      
      
      category.addItem("");
      category.addItem("    1  年");
      category.addItem("    3  年");
      category.addItem("    5  年");
      category.addItemListener(this);
      category.setFont(new Font("楷体_GB2312",Font.BOLD,20));
      
      gua.addActionListener(new GuaListener());
      
      for(int k=0;k<8;k++){accountField[k]=new JTextField(); 
      accountField[k].setFont(new Font("楷体",Font.PLAIN,20));}
      int j=0;
      for(int i =0;i<10;i++){
      tablepanel1.add(heading1[i]);
       if(i==5){tablepanel1.add(category);}
      else{ 
       if(i==7)tablepanel1.add(gua);
       else tablepanel1.add(accountField[j++]);
              }  }
      accountField[4].addFocusListener(new TextFieldListener());  
         
     //设计取款表格的面板 
     takepanel.setBounds(30,300,600,25);  
      takepanel.add(takelabel);
      takelabel.setFont(new Font("华文彩云",Font.BOLD,17));
    tablepanel2.setBounds(30,330,600,100);   
    tablepanel2.setLayout(new GridLayout(2,4));   
     heading2[0]=new  JLabel("取款日期",JLabel.CENTER);
      heading2[1]=new  JLabel("利息",JLabel.CENTER);
      heading2[2]=new  JLabel("取款总额",JLabel.CENTER);
      heading2[3]=new  JLabel("营业员 ",JLabel.CENTER);
    for(int i=0;i< heading2.length;i++){heading2[i].setFont(new Font("楷体_GB2312",Font.PLAIN,20));
    heading2[i].setForeground(Color.blue);}
    
     for(int k=0;k<4;k++){takeField[k]=new JTextField(); 
     takeField[k].setFont(new Font("楷体",Font.PLAIN,20));
      }
      for(int i=0;i<4;i++){
      tablepanel2.add(heading2[i]);
      tablepanel2.add(takeField[i]);
                        } 
      
 //设置提示窗口及其面板
  promptpanel.setBounds(30,430,600,35);
    promptpanel.add(prompt);
    prompt.setFont(new Font("幼圆",Font.BOLD,26));
    prompt.setForeground(Color.red);
    prompt.setHorizontalAlignment(JTextField.CENTER);
    
 
  //将表格面板加入滚动板
    JPanel all=new JPanel(); 
    sp= new JScrollPane(
                        ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
                        ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);      
  //将标题面板headPanel,滚动板sp,提示面板promptPanel加入主窗口  
    Container contentPane = getContentPane();
   contentPane.add(acpanel);
   contentPane.add(tablepanel1);
   contentPane.add(takepanel);
   contentPane.add(tablepanel2);
   contentPane.add(promptpanel); 
    contentPane.add(sp); 
  for(int i=0;i<8;i++)accountField[i].setEditable(true);
  for(int f=0;f<takeField.length;f++)takeField[f].setEditable(true);  
    
 // addWindowListener(new MainWindowListener());    
    //设置窗口大小
    setSize(700,560);
    
    
                         }   //构造方法MoneyFrame()声明结束

//监听储种
   	public void itemStateChanged(ItemEvent e){
   	if(e.getStateChange()==ItemEvent.SELECTED){
        String typename=(String)e.getItem();	
       if( typename.equals("    1  年"))asd.type=1; 
       if( typename.equals("    3  年"))asd.type=3; 
       if( typename.equals("    5  年"))asd.type=5; 
           }
          } 
 
//监听挂失 
 class GuaListener implements ActionListener{
    public void actionPerformed(ActionEvent e){
   if(gua.isSelected()){
   	 asd.cancelmoney=1; 
  Calendar calendar=Calendar.getInstance();    
   accountField[6].setText(Integer.toString(calendar.get(Calendar.YEAR))+"年"+
   Integer.toString(calendar.get(Calendar.MONTH)+1)+"月"
   +Integer.toString(calendar.get(Calendar.DATE))+"日"); 
   accountField[6].setEditable(false);
   	}else{asd.cancelmoney=0;
    accountField[6].setText("");	
   	}
 }}
 
class TextFieldListener implements FocusListener{
   public void focusGained(FocusEvent e){}
   public void focusLost(FocusEvent e){
   	try{
   	JTextField num=(JTextField)e.getSource();
   	String money=num.getText();
   	int ph=Integer.valueOf(money).intValue();
   	}
 catch(Exception ie){prompt.setText("输入的钱必须是整数");
   accountField[4].setText(""); 
 }  	
   	}}
 
 //监听存款
 class NewAccListener implements ActionListener{
    public void actionPerformed(ActionEvent e){
    SaveDialog pause=new SaveDialog();
    if(sign==0){pause.show();}
    for(int i=0;i<8;i++)accountField[i].setText("");//对表格初始化    
          prompt.setText(""); 
          accountField[1].setVisible(true);
         for(int i=0;i<8;i++)accountField[i].setEditable(true); 
         asd.cancelmoney=0;
         asd.state=0;
      acdate=(int)Math.round(System.currentTimeMillis()/86400000); 
      asd.dates=acdate;           
        Calendar calendar=Calendar.getInstance();    
   accountField[5].setText(Integer.toString(calendar.get(Calendar.YEAR))+"年"+
   Integer.toString(calendar.get(Calendar.MONTH)+1)+"月"
   +Integer.toString(calendar.get(Calendar.DATE))+"日"); 
      accountField[6].setEditable(false);
      acpanel.setVisible(true);
     tablepanel1.setVisible(true);
      takepanel.setVisible(false);         
      tablepanel2.setVisible(false); 
      repaint();
      sign=0;                                                                 
       } }

class SaveDialog extends JDialog{
Icon  alert=new ImageIcon("alert.gif");
JLabel Quelabel=new JLabel("要保存吗?",alert,JLabel.CENTER);
JButton yes=new JButton("是");
JButton no=new JButton("否");
SaveDialog(){
   super(MoneyFrame.this,"银行定期储蓄管理系统",true);
   JPanel aaa=new JPanel();
   JPanel bbb=new JPanel();
   aaa.add(Quelabel);                                                             
   Container dialogs=getContentPane();
   dialogs.add("Center",aaa);
   Quelabel.setFont(new Font("楷体",Font.PLAIN,20));
   yes.addActionListener(new SureListener());
   no.addActionListener(new SureListener());           
   bbb.add(yes);  bbb.add(no);
   dialogs.add("South",bbb); 
   yes.setFont(new Font("楷体",Font.PLAIN,15));
   no.setFont(new Font("楷体",Font.PLAIN,15));
  setBounds(200,200,300,150);
  addWindowListener(new DialogWindowListener());
             }
                        
 class SureListener implements ActionListener{
   public void actionPerformed(ActionEvent  e){
   	Object source = e.getSource(); 
        if(source == yes){
        	save();  }
       dispose();
                                               }
                                              }
     }//对话框类SaveDialog的声明结束
 
 //对话框类FileNameDialog
 class FileNameDialog extends JDialog{
    JLabel fileNameLabel = new JLabel("姓名", JLabel.CENTER);
    JTextField fileNameTF = new JTextField(15);

⌨️ 快捷键说明

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