Pada tutorial, ini saya berusaha mengajari Anda secara lebih keras lagi agar Anda mempunyai bekal ilmu dasar yang kuat di ilmu pemrograman visual. Kebanyakan di luar sana, programmer pemula seperti Anda ini akan merasa males kalau sudah ketemu yang namanya itu pemrograman visual tanpa interface GUI. Pada...

Membuat Menu Login Sederhana [Full Coding]

Pada tutorial, ini saya berusaha mengajari Anda secara lebih keras lagi agar Anda mempunyai bekal ilmu dasar yang kuat di ilmu pemrograman visual. Kebanyakan di luar sana, programmer pemula seperti Anda ini akan merasa males kalau sudah ketemu yang namanya itu pemrograman visual tanpa interface GUI. Padahal, sebenarnya pemrograman visual itu juga penting Anda pelajari untuk mengetahui kode – kode objek visualnya seperti, Button, Label, Frame, Panel dan lainnya. Ingat, kondisi Anda saat ini ialah dalam proses belajar bukan dalam suatu tuntutan pekerjaan yang harus cepat siap. Karena, yang namanya pemrograman visual pasti dibalik tampilannya yang cantik terdapat baris – baris kode yang panjang.

Ok, tanpa buang – buang waktu lagi langsung saja masuk ke programnya. Ingat, pada tutorial ini saya ajarkan Anda secara full coding tanpa interface GUI sedikit pun. Pada tutorial ini, saya membuatnya di IDE JCreator. Oya, kode – kode pemrograman pada tutorial ini sudah ada sebagian yang saya jelaskan pada tutorial sebelumnya, Jadi, kode – kode tersebut tidak akan saya bahas lagi. Yang saya bahas di sini ialah kode – kode baru seperti, Event handler untuk Button.

  1. Buatlah Frame, Label, TextField dan Button seperti kode berikut.
    //	Buat Objek Frame
    	static JFrame frame = new JFrame();
    	
    	//	Buat Objek Label
    	static JLabel lblUsername = new JLabel("Username");
    	static JLabel lblPasswd = new JLabel("Password");
    	
    	//	Buat Objek TextField dan PasswordField
    	static JTextField txtUsername = new JTextField();
    	static JPasswordField txtPasswd = new JPasswordField();
    	
    	//	Buat Button Masuk
    	static JButton btnMasuk = new JButton("Masuk");
    Dan masukkan Label, TextField dan Button ke dalam Frame.
    //	Tentukan Judul di title bar Frame
    		frame.setTitle("Menu Login Sederhana");
    		
    		//	Tentukan ukuran frame
    		frame.setSize(250, 140);
    		
    		//	Set posisi frame berada di tengah layar 
    		frame.setLocationRelativeTo(null);
    		
    		//	[Optional] Matikan tombol maximize di frame
    		frame.setResizable(false);
    		
    		//	Set Program agar berhenti ketika tombol close di frame di klik
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		
    		//	Set Visible frame  agar Frame muncul ketika program di running
    		frame.setVisible(true);
    		
    		//	Set Layout Frame
    		frame.setLayout(null);
    		
    		//	Memasukkan komponen Label, TextField dan Button ke dalam Frame
    		frame.add(lblUsername);
    		frame.add(lblPasswd);
    		frame.add(txtUsername);
    		frame.add(txtPasswd);
    		frame.add(btnMasuk);
    		
    		
    		//	Menentukan posisi komponen Label, TextField dan Button di dalam Frame menggunakan koordinat X dan Y
    		lblUsername.setBounds(20, 20, 100, 20);
    		lblPasswd.setBounds(20, 50, 100, 20);
    		txtUsername.setBounds(100, 20, 130, 20);
    		txtPasswd.setBounds(100, 50, 130, 20);
    		btnMasuk.setBounds(20, 80, 75, 20);
  2. Buatlah Event Handler untuk Button seperti kode berikut.
    //	Event untuk Button Masuk menerima klik mouse
    		btnMasuk.addActionListener(new ActionListener()
    		{
    			public void actionPerformed(ActionEvent e)
    			{
    				//	Mengambil nilai txtUsername
    				String username = txtUsername.getText().toString();
    				String passwd = txtPasswd.getText().toString();
    				
    				if(username.equals("admin") && passwd.equals("admin"))
    				{
    					JOptionPane.showMessageDialog(null, "Anda berhasil login");
    					
    				}
    				else
    				{
    					JOptionPane.showMessageDialog(null, "Username/Password Anda salah!!!");
    					
    
    					//	Untuk membatasi kesalahan user dalam melakukan login
    					count++;
    				}
    				
    				if(count == 3)
    				{
    					JOptionPane.showMessageDialog(null, "Anda sudah gagal Login sebanyak 3 kali. Harap coba lagi nanti . . .");
    					System.exit(1);
    				}
    			}
    		});	


    Penjelasan kode:
  • addActionListener berfungsi untuk menambahkan Event Mouse pada Button Masuk.
  • actionPerformed(ActionEvent e) untuk menambahkan Aksi yang akan dilakukan jika Button Masuk di klik. Ini merupakan satu paket dengan addActionListener.
  • Terlihat pada kode diatas, bahwa user akan berhasil login jika Username dan Password ialah “admin” (tanpa tanda kutip).
  • Jika, user gagal login sebanyak 3 kali maka program secara otomatis akan berhenti. Dan menampilkan pesan kepada user bahwa Anda harus coba lagi nanti.

 

Lumayan gampangkan… Anda bisa modifikasi program dibawah ini dengan cara menambahkan konsep OOP. Jadi, jika user berhasil login maka, Akan muncul Frame baru dengan tampilan agar user memasukkan namanya.

Berikut ialah source code lengkapnya.

import javax.swing.*;
import java.awt.event.*;

/**
 * 
 * @author Yudi Setiawan
 * 
 * Menu Login Sederhana
 *
 */

public class Login
{
	//	Buat Objek Frame
	static JFrame frame = new JFrame();
	
	//	Buat Objek Label
	static JLabel lblUsername = new JLabel("Username");
	static JLabel lblPasswd = new JLabel("Password");
	
	//	Buat Objek TextField dan PasswordField
	static JTextField txtUsername = new JTextField();
	static JPasswordField txtPasswd = new JPasswordField();
	
	//	Buat Button Masuk
	static JButton btnMasuk = new JButton("Masuk");
	
	//	Variable
	static int count = 0;
	
	//	Method Main
	public static void main(String[] args)
	{
		//	Panggil prosedur Menu
		Menu();
		
		//	Panggil prosedur Event
		Handler();
		
	}
	
	//	Procedure untuk Layout Menu
	static void Menu()
	{
		//	Set judul frame
		frame.setTitle("Menu Login Sederhana");
		
		//	Set ukuran frame
		frame.setSize(250, 140);
		
		//	Set Posisi frame berada di tengah layar
		frame.setLocationRelativeTo(null);
		
		//	[Optional] Set tombol maximize menjadi disabled
		frame.setResizable(false);
		
		//	Set program agar program berhenti ketika tombol close di klik di frame
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		//	Set Visible frame  agar Frame muncul ketika program di running
		frame.setVisible(true);
		
		//	Set Layout Frame
		frame.setLayout(null);
		
		//	Memasukkan komponen Label, TextField dan Button ke dalam Frame
		frame.add(lblUsername);
		frame.add(lblPasswd);
		frame.add(txtUsername);
		frame.add(txtPasswd);
		frame.add(btnMasuk);
		
		
		//	Menentukan posisi komponen Label, TextField dan Button di dalam Frame menggunakan koordinat X dan Y
		lblUsername.setBounds(20, 20, 100, 20);
		lblPasswd.setBounds(20, 50, 100, 20);
		txtUsername.setBounds(100, 20, 130, 20);
		txtPasswd.setBounds(100, 50, 130, 20);
		btnMasuk.setBounds(20, 80, 75, 20);
		
	}
	
	//	Event Handler untuk Button Masuk
	static void Handler()
	{
		//	Event untuk Button Masuk menerima klik mouse
		btnMasuk.addActionListener(new ActionListener()
		{
			public void actionPerformed(ActionEvent e)
			{
				//	Mengambil nilai txtUsername
				String username = txtUsername.getText().toString();
				String passwd = txtPasswd.getText().toString();
				
				if(username.equals("admin") && passwd.equals("admin"))
				{
					JOptionPane.showMessageDialog(null, "Anda berhasil login");
					
				}
				else
				{
					JOptionPane.showMessageDialog(null, "Username/Password Anda salah!!!");
					

					//	Untuk membatasi kesalahan user dalam melakukan login
					count++;
				}
				
				if(count == 3)
				{
					JOptionPane.showMessageDialog(null, "Anda sudah gagal Login sebanyak 3 kali. Harap coba lagi nanti . . .");
					System.exit(1);
				}
			}
		});	
	}
	
}

About Author

Yudi Setiawan

Saat ini aktif sebagai Mahasiswa di salah satu Universitas di kota Medan dengan mengambil bidang Fakultas Teknik dan Ilmu Komputer. Sangat senang dengan bahasa pemrograman Java dan Android.


Comment & Discussions

  • Aldi Pratama
    gan cara agar textfield nya kosong lagi setelah kita tekan ok pada massege "anda berhasil login" giman yaa???

    terima kasih

    • Yudi Setiawan

      pakai setText("");
      Contoh: txtUsername.setText("");


  • Please LOGIN before if you want to give the comment.