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

📄 mainframe.java

📁 课程设计:ATM Project源码
💻 JAVA
字号:
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.event.*;
import javax.swing.border.LineBorder;
import java.io.*;
import java.net.*;
public class MainFrame {
	  Socket Clientsock; 
	  CustomerThread st;
	  JFrame f = new JFrame();
	  Font font=new Font("Serif",Font.ITALIC|Font.BOLD,25);
	  JPanel Left = new JPanel();
      JPanel Caption = new JPanel();
      
	  Clock2 clockPanel=new Clock2("clock");
	  Font buttonfont=new Font("Serif",Font.BOLD,18);
	  Icon exit1 = new ImageIcon(".\\gif\\exit.jpg");
	  Icon exit2= new ImageIcon(".\\gif\\exit_over.jpg");
	  Icon exit3= new ImageIcon(".\\gif\\exit_down.jpg");
	  Icon read1= new ImageIcon(".\\gif\\read.jpg");
	  Icon read2= new ImageIcon(".\\gif\\read_over.jpg");
	  Icon read3= new ImageIcon(".\\gif\\read_down.jpg");
	  Icon pick1= new ImageIcon(".\\gif\\pick.jpg");
	  Icon pick2= new ImageIcon(".\\gif\\pick_over.jpg");
	  Icon pick3= new ImageIcon(".\\gif\\pick_down.jpg");
	  Icon turn1= new ImageIcon(".\\gif\\turn.jpg");
	  Icon turn2= new ImageIcon(".\\gif\\turn_over.jpg");
	  Icon turn3= new ImageIcon(".\\gif\\turn_down.jpg");
	  Icon quary1= new ImageIcon(".\\gif\\quary.jpg");
	  Icon quary2= new ImageIcon(".\\gif\\quary_over.jpg");
	  Icon quary3= new ImageIcon(".\\gif\\quary_down.jpg");
	  Icon pass1= new ImageIcon(".\\gif\\pass.jpg");
	  Icon pass2= new ImageIcon(".\\gif\\pass_over.jpg");
	  Icon pass3= new ImageIcon(".\\gif\\pass_down.jpg");
	  Icon exit4= new ImageIcon(".\\gif\\exit_disb.jpg");
	  Icon read4= new ImageIcon(".\\gif\\read_disb.jpg");
	  Icon pick4= new ImageIcon(".\\gif\\pick_disb.jpg");
	  Icon turn4= new ImageIcon(".\\gif\\turn_disb.jpg");
	  Icon quary4= new ImageIcon(".\\gif\\quary_disb.jpg");
	  Icon pass4= new ImageIcon(".\\gif\\pass_disb.jpg");
	  
	  
	  
	   public JButton CmdRead=new JButton();
	  public JButton CmdMoney=new JButton();
      public JButton CmdQuary=new JButton();
	 public JButton CmdChange=new JButton();
       public JButton CmdPass=new JButton();
	   public JButton CmdCard=new JButton();
	  JLabel Title=new JLabel("欢迎使用ATM自动柜员机");
   	   Icon imgCaption=new ImageIcon(".\\title\\welcome.gif");
       JLabel picCaption=new JLabel(imgCaption);
	  JPanel cardPanel=new JPanel();
	  private ActionListener listener=new ActionResponse();
	  JSplitPane Split1=new JSplitPane(JSplitPane.VERTICAL_SPLIT,false,Caption,cardPanel);
	  JSplitPane Split= new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,false, Left,Split1);

	  //pane
	  PickPane CardPick;
      ChangePane CardChange;
      QuaryPane CardQuary=new QuaryPane(f);
      PasswordPane CardPassword;
      Welcome welcome;
      public MainFrame() 
      {
        Container Form1 = f.getContentPane();
        f.setSize(650,450);
        Left.setLayout(null);
        Form1.setLayout(null);
        Caption.setLayout(null);
        Caption.add(picCaption);
        picCaption.setBounds(0,5,500,55);
        //welcome.setLayout(null);
        Split.setBounds(0,0,800,500);
        Split.setOneTouchExpandable(false); 
        Split.setDividerSize(5); 
        Split.setDividerLocation(0.17);
        Split1.setBounds(0,0,800,500);
        Split1.setOneTouchExpandable(false); 
        Split1.setDividerSize(5); 
        Split1.setDividerLocation(0.13);
        Form1.add(Split);
        Title.setFont(font);
        Title.setForeground(Color.blue);
        Title.setBounds(60,10,380,30);
        CmdRead.setRolloverEnabled(true);
        CmdQuary.setRolloverEnabled(true);
        CmdMoney.setRolloverEnabled(true);
        CmdChange.setRolloverEnabled(true);
        CmdPass.setRolloverEnabled(true);
        CmdCard.setRolloverEnabled(true);
        
        CmdRead.setIcon(read1);
        CmdQuary.setIcon(quary1);
        CmdMoney.setIcon(pick1);
        CmdChange.setIcon(turn1);
        CmdPass.setIcon(pass1);
        CmdCard.setIcon(exit1);
        
        CmdRead.setRolloverIcon(read2);
        CmdQuary.setRolloverIcon(quary2);
        CmdMoney.setRolloverIcon(pick2);
        CmdChange.setRolloverIcon(turn2);
        CmdPass.setRolloverIcon(pass2);
        CmdCard.setRolloverIcon(exit2);
        
        CmdRead.setPressedIcon(read3);
        CmdQuary.setPressedIcon(quary3);
        CmdMoney.setPressedIcon(pick3);
        CmdChange.setPressedIcon(turn3);
        CmdPass.setPressedIcon(pass3);
        CmdCard.setPressedIcon(exit3);
        CmdRead.setDisabledIcon(read4);
        CmdQuary.setDisabledIcon(quary4);
        CmdMoney.setDisabledIcon(pick4);
        CmdChange.setDisabledIcon(turn4);
        CmdPass.setDisabledIcon(pass4);
        CmdCard.setDisabledIcon(exit4);
        
        
        CmdRead.setBorder(null);
        CmdQuary.setBorder(null);
        CmdMoney.setBorder(null);
        CmdChange.setBorder(null);
        CmdPass.setBorder(null);
        CmdCard.setBorder(null);
        CmdRead.setBounds(10,20,120,35);
        CmdRead.addActionListener(listener);
        CmdQuary.setBounds(10,70,120,35);
        CmdQuary.addActionListener(listener);
        CmdChange.setBounds(10,120,120,35);
        CmdChange.addActionListener(listener);
        CmdMoney.setBounds(10,170,120,35);
        CmdMoney.addActionListener(listener);
        CmdPass.setBounds(10,220,120,35);
        CmdPass.addActionListener(listener);
        CmdCard.setBounds(10,270,120,35);
        CmdCard.addActionListener(listener);
        CmdQuary.setFont(buttonfont);
        CmdChange.setFont(buttonfont);
        CmdCard.setFont(buttonfont);
        CmdMoney.setFont(buttonfont);
        CmdPass.setFont(buttonfont);
        CmdRead.setFont(buttonfont);
        
        cardPanel.setLayout(new CardLayout());
	    cardPanel.setBounds(5,40,780,480);
	    
        clockPanel.setBounds(20,320,100,100);
        try {
              Clientsock= new Socket((new ReadConfig()).getBankSrvIP(),6688);
              st = new CustomerThread(Clientsock,CardQuary,f,this);
              st.start();
            }
            catch(IOException e)
            {JOptionPane.showMessageDialog(f,"与服务器连接出错,请确定服务器网络配置正确并且服务端已运行!", "提示:", JOptionPane.INFORMATION_MESSAGE);}
        CardChange = new ChangePane(f,st);
        CardPassword = new PasswordPane(f,st);
        CardPick = new PickPane(f,st);
        welcome = new Welcome(f,st);
        Left.add(CmdRead);
        Left.add(CmdQuary);
        Left.add(CmdChange);
        Left.add(CmdCard);
        Left.add(CmdMoney);
        Left.add(CmdPass);
        Left.add(clockPanel);
        init();
        Thread clockThread;
        clockThread=new Thread(clockPanel);
        clockThread.start();
        cardPanel.add("CardWelcome",welcome);
	    cardPanel.add("CardPick",CardPick);
	    cardPanel.add("CardChange",CardChange);
	    cardPanel.add("CardQuary",CardQuary);
	    cardPanel.add("CardPassword",CardPassword);
	    f.setTitle("ATM Client");
	    f.setLocation(100,80);
	    f.setResizable(false);
        f.setVisible(true);
        
        f.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                    System.exit(0);
            }
        });
    }
class ActionResponse implements ActionListener
 {
  public void actionPerformed (ActionEvent e) 
  {  
	if (e.getSource()==CmdRead)
	    ReadCard();
	if (e.getSource()==CmdMoney)
	    Pick();
	if (e.getSource()==CmdQuary)
	    Quary();
	if (e.getSource()==CmdChange)
	    Change();
	if (e.getSource()==CmdPass)
	    Password();
	if (e.getSource()==CmdCard)
	    OutCard();
  }
 } 	
   public void init()
   {
   	    CmdQuary.setEnabled(false);
        CmdChange.setEnabled(false);
        CmdMoney.setEnabled(false);
        CmdPass.setEnabled(false);
        CmdCard.setEnabled(false);
        welcome.l2.setVisible(false);
        welcome.l3.setVisible(false);
        welcome.txtPass.setVisible(false);
        welcome.txtCardID.setVisible(false);
  }
  public void EnableButton()
  {
  	    CmdQuary.setEnabled(true);
        CmdChange.setEnabled(true);
        CmdMoney.setEnabled(true);
        CmdPass.setEnabled(true);
        CmdCard.setEnabled(true);
  }
  
   private void ReadCard()
   {
   	   ((CardLayout)cardPanel.getLayout()).show(cardPanel,"CardWelcome");
   	   welcome.ReadAtm();
   	   
   }
   private void Pick() 
   {

   	  ((CardLayout)cardPanel.getLayout()).show(cardPanel,"CardPick");
   }
   private void Quary()
   {
   try{  
   	   st.SendQuary();
   	  }
   	  catch(IOException e){System.out.println("error when sendquary");}
   		((CardLayout)cardPanel.getLayout()).show(cardPanel,"CardQuary");
   }
   private void Change()
   {
  	 	((CardLayout)cardPanel.getLayout()).show(cardPanel,"CardChange");
  	 	CardChange.txtCard.setText(st.Card);
   }
   private void Password()
   {
  	 	((CardLayout)cardPanel.getLayout()).show(cardPanel,"CardPassword");
  	 	CardPassword.txtCard.setText(st.Card);
   }
   private void OutCard()
   {
   		String title = "请确定";
        int type = JOptionPane.INFORMATION_MESSAGE;
        String[] options={"确定","取消"};
        int optionType=JOptionPane.YES_NO_OPTION;
        int messageType=JOptionPane.QUESTION_MESSAGE; 
        String message = "你真的要取卡退出吗?\n东大银行提醒您不要忘记取出ATM卡及打印的取款条!";
        int result = JOptionPane.showOptionDialog(f,message, title, optionType,messageType,null,options,options[1]);
        if (result == JOptionPane.YES_OPTION) 
        {init();welcome.Init_State();}
   }
   
    
  }

⌨️ 快捷键说明

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