Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
- package bank;
- /**
- *
- * @author Tin
- */
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.*;
- public class GUI extends JFrame implements ActionListener{
- /**
- * customerObject en global instans av klassen customer, används för att anropa diverse metoder i klassen.
- * accountObject en global instans av klassen customer, används för att anropa diverse metoder i klassen.
- * creditAccountObject en global instans av klassen CreditAccount, används för att anropa diverse metoder i klassen.
- * savingAccountObject en global instans av klassen SavingAccount, används för att anropa diverse metoder i klassen.
- * transactionObject en global instans av klassen Transaction, används för att anropa diverse metoder i klassen.
- * persNr, firstName, lastName, fullName, accNr,accountNumber, amount är globala variabler som kan nås från hela klassen.
- */
- Bank bankObject = new Bank();
- String persNr, firstName, lastName, fullName;
- int accNr, accountNumber;
- double amount;
- private Container contentPane;
- private static final String NEWLINE = System.getProperty("line.separator");
- //Start menyns alla objekt och variabler
- private JButton listCustomerButton;
- private JButton createCustomerButton;
- private JButton chooseCustomerButton;
- private JButton exitButton;
- private JPanel listPanel;
- private JList customerJList;
- private String[] names = {"Tin Duong", "Serwa", "Le"};
- private String[] name = {""};
- private DefaultListModel model;
- //skapa ny kund menys alla objekt och variabler
- private JLabel personalNrLbl;
- private JLabel firstNameLbl;
- private JLabel lastNameLbl;
- private JTextField personalNrTxtbox;
- private JTextField firstNameTxtbox;
- private JTextField lastNameTxtbox;
- private JButton addCustomerButton;
- private JButton returnButton;
- public void menu()
- {
- //Anger menyns properties
- contentPane = getContentPane();
- contentPane.setLayout(null);
- setSize(750,350);
- setLocation(150,205);
- setTitle("Tin's banksystem");
- setResizable ( false );
- //Skapar och placerar en JList
- listPanel = new JPanel(new GridLayout(0,1));
- listPanel.setBorder(BorderFactory.createTitledBorder("Kund lista"));
- listPanel.setBounds(36,52,500,200);
- contentPane.add(listPanel);
- model = new DefaultListModel();
- customerJList = new JList(model);
- for(int i = 0; i<name.length;i++)
- {
- model.add(i,name[i]);
- }
- listPanel.add(new JScrollPane(customerJList));
- customerJList.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
- //Skapar och placerar skriv ut kunder knapp samt lägger till lyssnare.
- listCustomerButton = new JButton("Skriv ut kunder");
- listCustomerButton.setBounds(580,72, 120, 30);
- contentPane.add(listCustomerButton);
- listCustomerButton.addActionListener(this);
- //Skapar och placerar skapa ny kund knapp samt lägger till lyssnare.
- createCustomerButton = new JButton("Skapa ny kund");
- createCustomerButton.setBounds(580,112, 120, 30);
- contentPane.add(createCustomerButton);
- createCustomerButton.addActionListener(this);
- //Skapar och placerar skriv ut kunder knapp samt lägger till lyssnare.
- chooseCustomerButton = new JButton("Välj kund");
- chooseCustomerButton.setBounds(580,152, 120, 30);
- contentPane.add(chooseCustomerButton);
- chooseCustomerButton.addActionListener(this);
- //Skapar och placerar avsluta knapp samt lägger till lyssnare.
- exitButton = new JButton("Avsluta");
- exitButton.setBounds(580,192, 120, 30);
- contentPane.add(exitButton);
- exitButton.addActionListener(this);
- //registrerar 'Exit upon closing' som en default avstängnings operation.
- setDefaultCloseOperation(EXIT_ON_CLOSE);
- }
- public void customerMenu()
- {
- //Anger skapakund menyns properties
- contentPane = getContentPane();
- contentPane.setLayout(null);
- setSize(350,250);
- setLocation(510,260);
- setTitle("Tin's banksystem");
- setResizable ( false );
- //Skapar och placerar personnummer label
- personalNrLbl = new JLabel("Personnr:");
- personalNrLbl.setBounds(30,20,120,52);
- contentPane.add(personalNrLbl);
- //Skapar och placerar förnamn label
- firstNameLbl = new JLabel("Förnamn:");
- firstNameLbl.setBounds(30,50,120,52);
- contentPane.add(firstNameLbl);
- //Skapar och placerar efternamn label
- lastNameLbl = new JLabel("Efternamn:");
- lastNameLbl.setBounds(30,80,120,52);
- contentPane.add(lastNameLbl);
- //Skapar och placerar personnummer textbox samt lägger till lyssnare.
- personalNrTxtbox = new JTextField();
- personalNrTxtbox.setBounds(120,35,200,20);
- contentPane.add(personalNrTxtbox);
- personalNrTxtbox.addActionListener(this);
- //Skapar och placerar förnamn textbox samt lägger till lyssnare.
- firstNameTxtbox = new JTextField();
- firstNameTxtbox.setBounds(120,65,200,20);
- contentPane.add(firstNameTxtbox);
- firstNameTxtbox.addActionListener(this);
- //Skapar och placerar efternamn textbox samt lägger till lyssnare.
- lastNameTxtbox = new JTextField();
- lastNameTxtbox.setBounds(120,95,200,20);
- contentPane.add(lastNameTxtbox);
- lastNameTxtbox.addActionListener(this);
- //Skapar och placerar lägg till kund knapp samt lägger till lyssnare.
- addCustomerButton = new JButton("Lägg till kund");
- addCustomerButton.setBounds(30,140, 140, 30);
- contentPane.add(addCustomerButton);
- addCustomerButton.addActionListener(this);
- //Skapar och placerar återgå knapp samt lägger till lyssnare.
- returnButton = new JButton("Återgå till menyn");
- returnButton.setBounds(30,180, 140, 30);
- contentPane.add(returnButton);
- returnButton.addActionListener(this);
- setDefaultCloseOperation(EXIT_ON_CLOSE);
- }
- public void actionPerformed(ActionEvent event)
- {
- //Hämtar vilken knapp som klickats.
- JButton clickedButton = (JButton) event.getSource();
- //startmenyns knappar.
- if(clickedButton == listCustomerButton)
- {
- model.clear();
- String[] customerInfo = bankObject.getCustomerList();
- int position = customerJList.getModel().getSize();
- for(int i=0;i < customerInfo.length;i++)
- {
- model.add(position,customerInfo[i]);
- }
- //System.out.println(customerObject.getCustomerList());
- }
- if(clickedButton == createCustomerButton)
- {
- GUI frame = new GUI();
- frame.customerMenu();
- frame.setVisible(true);
- }
- if(clickedButton == chooseCustomerButton)
- {
- Object[] name;
- int[] loc;
- name = customerJList.getSelectedValues();
- loc = customerJList.getSelectedIndices();
- System.out.println("Currently selected animal names are ");
- for (int i = 0; i < name.length; i++)
- {
- System.out.println((String)name[i] + " at position " + loc[i]);
- }
- /*
- list.addListSelectionListener(new ListSelectionListener() {
- public void valueChanged(ListSelectionEvent e)
- {
- contentpane.setBackground(listColorValues[list.getSelectedIndex()]);
- }
- */
- }
- if(clickedButton == exitButton)
- {
- bankObject.listAllCustomers();
- }
- //skapa kund menyns knapp
- if(clickedButton == addCustomerButton)
- {
- persNr = personalNrTxtbox.getText();
- firstName = firstNameTxtbox.getText();
- lastName = lastNameTxtbox.getText();
- fullName = (firstName + " " + lastName);
- if(bankObject.checkPersonalNumber(persNr))
- {
- bankObject.createCustomer(persNr, fullName);
- }
- setVisible(false);
- }
- if(clickedButton == returnButton)
- {
- setVisible(false);
- }
- }
- }
Add Comment
Please, Sign In to add comment