Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- public class GUI extends JFrame implements ActionListener{
- //Frame Login
- JButton signIn=new JButton("Log In");
- JButton signUp=new JButton("Register");
- JTextField id=new JTextField();
- JPasswordField pass=new JPasswordField();
- JPanel grid=new JPanel(new GridLayout(4,2,0,10));
- Font x=new Font("SansSerif",Font.BOLD, 36);
- JLabel loginStatus=new JLabel("Selamat Datang . . . . .");
- int flag=1;
- //Frame Regis
- JFrame R=new JFrame("Registrasi");
- JPanel data=new JPanel(new GridLayout(3,2));
- JPanel doneStatus=new JPanel(new GridLayout(3,1));
- JPanel bawah=new JPanel(new GridLayout(1,2));
- JPanel box=new JPanel(new GridLayout(3,1));
- JTextField rId=new JTextField();
- JPasswordField rPass=new JPasswordField();
- JPasswordField rPass2=new JPasswordField();
- JLabel statid=new JLabel();
- JLabel pass1=new JLabel();
- JLabel pass2=new JLabel();
- JButton done = new JButton("Done");
- //Data Base
- String[] username =new String[50];
- String[] password =new String[50];
- int jumlah=0;
- GUI(){
- component();
- frame();
- }
- void frame(){
- setLayout(new FlowLayout(FlowLayout.CENTER,20,20));
- setTitle("Login");
- setSize(500,400);
- setLocationRelativeTo(null);
- setDefaultCloseOperation(EXIT_ON_CLOSE);
- setVisible(true);
- setResizable(false);
- }
- void component(){
- grid.add(new JLabel("Username"));
- grid.add(id);
- grid.add(new JLabel("Password"));
- grid.add(pass);
- grid.add(loginStatus);
- grid.add(new JLabel());
- grid.add(signIn);signIn.addActionListener(this);
- grid.add(signUp);signUp.addActionListener(this);
- add(grid);
- }
- public static void main(String[] args) {
- new GUI();
- }
- public void actionPerformed(ActionEvent e) {
- System.out.println(e.getActionCommand()+validasi());
- if (e.getActionCommand().equals("Log In")) {
- flag=0;
- for (int i = 0; i < jumlah; i++) {
- if(username[i].equals(id.getText())&&password[i].equals(pass.getText())){
- flag=1;
- suksesLogin();
- break;
- }
- }
- if (flag!=1)
- loginStatus.setText("Data Tidak ditemukan");
- }
- else if(e.getActionCommand().equals("Register")){
- regis();
- }
- else if(e.getActionCommand().equals("Done")&&validasi()==3){
- username[jumlah]=rId.getText();
- password[jumlah]=rPass.getText();
- jumlah++;
- R.setVisible(false);
- setVisible(true);
- }
- }
- void suksesLogin(){
- JFrame sukses=new JFrame("Home");
- JLabel y=new JLabel("Sukses Login");
- y.setFont(x);
- sukses.add(y,BorderLayout.CENTER);
- sukses.setVisible(true);
- setVisible(false);
- sukses.setSize(300,200);
- sukses.setLocationRelativeTo(null);
- sukses.setDefaultCloseOperation(EXIT_ON_CLOSE);
- sukses.setResizable(false);
- }
- void regis(){
- R.setVisible(true);
- R.setLayout(new FlowLayout(FlowLayout.CENTER,50,50));
- setVisible(false);
- R.setSize(500,400);
- R.setLocationRelativeTo(null);
- R.setDefaultCloseOperation(EXIT_ON_CLOSE);
- R.setResizable(false);
- data.add(new JLabel("Username"));
- data.add(rId);
- data.add(new JLabel("Password"));
- data.add(rPass);
- data.add(new JLabel("Ulang Password"));
- data.add(rPass2);
- JLabel y=new JLabel("Form Registrasi");
- y.setFont(x);
- box.add(y);
- box.add(data);
- doneStatus.add(statid);
- doneStatus.add(pass1);
- doneStatus.add(pass2);
- bawah.add(doneStatus);
- bawah.add(done);done.addActionListener(this);
- box.add(bawah);
- R.add(box);
- reset();
- }
- void reset(){
- rId.setText("");
- rPass.setText("");
- rPass2.setText("");
- id.setText("");
- pass.setText("");
- }
- int validasi(){
- flag=0;
- if(rPass.getText().equals(rPass2.getText()))
- flag++;
- else
- pass2.setText("Password berbeda");
- if(rId.getText().length()>=5&&rId.getText().length()<=10)
- flag++;
- else
- statid.setText("Id [5...10]");
- if(rPass.getText().length()>=5&&rPass.getText().length()<=15)
- flag++;
- else
- pass1.setText("Password [5....15]");
- System.out.println(flag);
- return flag;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment