Setelah kemarin berhasil membaut form login, selanjutnya yang ingin aku buat adalah membuat form register. Hmmm mungkin form register ini akan sedikit panjang penjelasannya. Stay focus
Buka NetBeans lalu File - New Project - Java - Java Application
Create new java - JFrameFrom dan beri nama frmRegister
berhasil sampai disitu? mari lanjutkan dengan mengisi form dengan beberapa text, password, checkbox dan combobox. Bisa dibuat seperti ini
tidak rumit kan :D
Oke, selanjutnya adalah mengubah variable name pada beberapa object yang ada untuk memudahkan coding nanti. Caranya adalah click kanan pada object yang ingin di ganti variablenya dan ganti variable namenya sesuai keinginan, tapi untuk tutorial ini mari buat variable name seperti ini
Oke, kini saatnya bercoding ria :)
Untuk membuat form Register yang bagus kita akan benar benar membutuhkan beberapa fucntion yang akan membantu kita. Beberapa diantaranya adalah
1. buatRandomCapta - Membuat random capta
2. cekPassword - memastikan password match
3. resetForm - mengosongkan form
4. setGender - menambah properti gender di combobox
5. cekCapta - memastikan capta di isi dengan benar
6. cekEmail - memastikan email yang dimasukan benar
1. buatRandomCapta
Untuk membuat random capta kita memerlukan variable yang dapat diakses semua member, maka kita tuliskan code berikut ini dibawah Public class frmRegister.
lalu kita tuliskan
function ini berfungsi membaut random integer setiap kali function ini dipanggil, jadi untuk lblrandom isinya selalu berubah
2. cekPassword
untuk cek password kita buat function seperti dibawah ini
hmm... hal yang pertama dilakukan function ini adalah mengambil String dari password yang dimasukan, setelah itu mengukur kekuatan password berdasarkan panjang password yang di inputkan. jika panjang password yang di inputkan adalah 0 maka lblpasschar tidak akan menampilkan apapun, namun ketika diketikan beberapa kata maka label akan menampilkan kata low untuk password dengan panjang karakter kurang dari 6, med untuk panjang password kurang dari 10 dan strong untuk password yang lebih dari 10.
Selanjutnya function ini mengecek apakan password dan re-password sama. jika sama maka lblpassmatch akan menampilkan Match dan mengubah ret menjadi true sedangkan jika tidak sama maka label akan menampilkan not match.
Ret adalah variable boolean yang nantinya digunakan untuk mengambalikan nilai dari cekPassword () dengan true jika password sama atau false jika password tidak sama
3. resetForm
Reset form adalah function yang digunakan untuk mengembalikan form ke tampilan kosong
function resetForm bertipe void yang artinya function ini tidak mengambalikan nilai.
Yang dilakukan dalam function resetForm ini adalah memanggil function buatRandomCapta(); yang beratri dia akan membuat capta baru. Selanjutnya adalah mengosongkan textField dan Password field yang ada pada form. Mengembalikan pilihan cbgender ke pilihan awal, mengosongkan label pass dan yang terakhir adalah uncheck chkaggre
4.setGender
Set gender adalah function yang digunakan untuk mengisi ulang cbgender
Pertama function ini akan mengambil karakter dari txtcapta lalu mengecek apakah hasil yang di inputkan benar atau salah. jika benar maka cekCapta akan mengmbalikan nilai true dan jika salah maka cekCapta akan mengmbaikan nilai false;
6. cekEmail
untuk function cek email ini akan digunakan function yang sederhana, hanya memastikan bahwa email sudah terdapat '@' dan '.' pada email yang dimasukkan.
pada dasarnya email berformat yourmail@mail.com maka yang kita perli cek adalah apakah karakter @ dan . sudah ada. Maka jalan dari function ini adalah mengambil string dari txtmail lali melakukan perulangan sebanyak n kali (sebanyak kata yang dita masukan di txtmail) lalu mengecek satu persatu dari karakter yang dimasukan. Hmm.... jika perulangan menemukan karakter @ maka nilai dari cek1 akan bernilai true dan jika ditemukan karakter . maka nilai dari cek2 menjadi true. Setelah itu cekEmail akan mengembalikan nilai berdasarkan nilai dari cek1 dan cek2 dengan logina AND.
Masih ingat logika and kan? jika salah satu terdapat nilai 0 maka hasilnya adalah 0. true =1 , false = 0
Okey, kita sudah selesai membuat fungsi gungsi yang kita butuhkan, sekarang adalah saatnya menaruh fungsi itu ke tempat yang benar.
Selanjutnya kita akan memberikan 2 fungsi ke dalam event formWindowOpened jadi ketika aplikasi dibuka maka fungsi yang kita masukan akan berjalan. Okey 2 fungsi itu adalah setGender dan buatRandomCapta.
Untuk penempatan code silahkan click kanan pada form window Pilih Events - Window - WindowOpened. Lalu masukan kedua fungsi tersebut. maka akan menjadi seperti ini
code diatas membuat cbgender terisi male dan female dan menggenerate capta baru
selanjutnya adalah code yang akan dimasukan pada form txtpass dan txtrepass caranya click kanan pada txtpass lalu pilih Events - Key - KeyReleased. Ulangi untuk txtrepass juga dan keduanya dimasukan code cekPassword. Okay, seperti ini jadinya
code tersebut dipasang di event keyreleased tujuannya untuk mengecek kekuatan dan kesamaan password ketika kita mengetikan password
cepek? sama. LOLOLOLOLOL
tapi marilah kita berlanjut ke code berikutnya. Selanjutnya adalah membuat button reset bekerja, maka yang kita butuhkan adalah click kanan pada tombol reset pilih Events - Action - ActionPerformed. dan masukan code resetForm kedalamnya
Lanjut ke button berikutnya, button cencel. Pada button ini kita akan membuat pertanyaan sebelum keluar, yaitu dengan pertanyaan ya atau tidak jadi keluar. Langsung saja pada codenya
Code ini akan menampilkan pertanyaan, yakin akan keluar? dan jika tombol yes ditekan maka aplikasi akan keluar sedangkan jika tombol no ditekan maka akan kembali ke form register
Finish your work with last code
code yang paling penting yang akan kita masukan adalah code yang berapa pada button register, oke untuk memulai click kanan pada button register pilih Events - Action - ActionPerformed. lalu masukan code berikut
Cukup panjang juga ya codenya, tapi akan ku jelaskan dengan sesingkat singkatnya. Code diatas menggunakan 4 lapis if yak mungkin itu semacam kue lapis namun bukan kue lapis yang aku maksud.
if yang pertama adalah if aggre. jika user sudah setuju maka menuju if selanjutnya dan jika tidak maka akan tampil pesan "kamu harus setuju untuk melanjutkan". If yang kedua adalah if capta benar. Jika capta yang dimasukan adalah benar maka code lanjut dan jika salah maka akan menampilkan pesan "Capta yang dimasukan salah". If yang ketiga adalah if email benar. Jika email yang di inputkan adalah benar maka akan lanjut dan jika salah maka akn menampilkan pesan "Masukan email dengan benar". Nah if yang terakhir adalah if password benar. Jika password benar maka program akan menampilkan pesan "Anda dibawah ini Name : Email : Pass : Gender Setuju dengan pendaftaran ini " dan jika password tidak match maka akan menampilkan pesan "Password must match"
Okey, itulah hal tersingkat yang bisa aku berikan. :D
Oke, itulah hasil dari program yang dibuat :)
Download frmRegister.java via Wuala
Buka NetBeans lalu File - New Project - Java - Java Application
Create new java - JFrameFrom dan beri nama frmRegister
berhasil sampai disitu? mari lanjutkan dengan mengisi form dengan beberapa text, password, checkbox dan combobox. Bisa dibuat seperti ini
tidak rumit kan :D
Oke, selanjutnya adalah mengubah variable name pada beberapa object yang ada untuk memudahkan coding nanti. Caranya adalah click kanan pada object yang ingin di ganti variablenya dan ganti variable namenya sesuai keinginan, tapi untuk tutorial ini mari buat variable name seperti ini
Oke, kini saatnya bercoding ria :)
Untuk membuat form Register yang bagus kita akan benar benar membutuhkan beberapa fucntion yang akan membantu kita. Beberapa diantaranya adalah
1. buatRandomCapta - Membuat random capta
2. cekPassword - memastikan password match
3. resetForm - mengosongkan form
4. setGender - menambah properti gender di combobox
5. cekCapta - memastikan capta di isi dengan benar
6. cekEmail - memastikan email yang dimasukan benar
1. buatRandomCapta
Untuk membuat random capta kita memerlukan variable yang dapat diakses semua member, maka kita tuliskan code berikut ini dibawah Public class frmRegister.
private int math1; private int math2;
lalu kita tuliskan
private void buatRandomCapta () { Random rnd = new Random(); math1 = rnd.nextInt(9); math2 = rnd.nextInt(9); lblrandom.setText(math1 + " + " + math2 + " = "); }
function ini berfungsi membaut random integer setiap kali function ini dipanggil, jadi untuk lblrandom isinya selalu berubah
2. cekPassword
untuk cek password kita buat function seperti dibawah ini
private boolean cekPassword () { String pass = String.valueOf(txtpass.getPassword()); String repass = String.valueOf(txtrepass.getPassword()); boolean ret = false; if (pass.length() == 0 ) { lblpasschar.setText(null); }else if (pass.length() < 6 ) { lblpasschar.setText("Low"); }else if (pass.length() < 10) { lblpasschar.setText("Med"); }else { lblpasschar.setText("Strong"); } if (pass.equals(repass)) { lblpassmatch.setText("Match"); ret = true; }else{ lblpassmatch.setText("Not Match"); } return ret; }
hmm... hal yang pertama dilakukan function ini adalah mengambil String dari password yang dimasukan, setelah itu mengukur kekuatan password berdasarkan panjang password yang di inputkan. jika panjang password yang di inputkan adalah 0 maka lblpasschar tidak akan menampilkan apapun, namun ketika diketikan beberapa kata maka label akan menampilkan kata low untuk password dengan panjang karakter kurang dari 6, med untuk panjang password kurang dari 10 dan strong untuk password yang lebih dari 10.
Selanjutnya function ini mengecek apakan password dan re-password sama. jika sama maka lblpassmatch akan menampilkan Match dan mengubah ret menjadi true sedangkan jika tidak sama maka label akan menampilkan not match.
Ret adalah variable boolean yang nantinya digunakan untuk mengambalikan nilai dari cekPassword () dengan true jika password sama atau false jika password tidak sama
3. resetForm
Reset form adalah function yang digunakan untuk mengembalikan form ke tampilan kosong
private void resetForm () { buatRandomCapta(); // Reset text and password field txtname.setText(null); txtmail.setText(null); txtpass.setText(null); txtrepass.setText(null); txtcapta.setText(null); // reset combo box list cbgender.setSelectedIndex(0); // reset label lblpasschar.setText(null); lblpassmatch.setText(null); // reset checked chkaggre.setSelected(false); }
function resetForm bertipe void yang artinya function ini tidak mengambalikan nilai.
Yang dilakukan dalam function resetForm ini adalah memanggil function buatRandomCapta(); yang beratri dia akan membuat capta baru. Selanjutnya adalah mengosongkan textField dan Password field yang ada pada form. Mengembalikan pilihan cbgender ke pilihan awal, mengosongkan label pass dan yang terakhir adalah uncheck chkaggre
4.setGender
Set gender adalah function yang digunakan untuk mengisi ulang cbgender
private void setGender () {
cbgender.removeAllItems();
cbgender.addItem("Male");
cbgender.addItem("Female");
}
tentunya yang dilakukan oleh function ini adalah mengosongkan cbgender lalu mengisinya dengan list male dan female. Hmm... untuk ComboBox di java secara default sudah di isi dengan 4 item. maka dari itu kita harus mengosongkan ComboBox ini erlebih dahulu
5. cekCapta
cek capta ini adalah function yang mengembalikan nilai true atau false sesuai capta yang dimasukan
cek capta ini adalah function yang mengembalikan nilai true atau false sesuai capta yang dimasukan
private boolean cekCapta() {
String hasil = txtcapta.getText();
if (Integer.parseInt(hasil) == (math1 + math2)) {
return true;
}else{
return false;
}
}
Pertama function ini akan mengambil karakter dari txtcapta lalu mengecek apakah hasil yang di inputkan benar atau salah. jika benar maka cekCapta akan mengmbalikan nilai true dan jika salah maka cekCapta akan mengmbaikan nilai false;
6. cekEmail
untuk function cek email ini akan digunakan function yang sederhana, hanya memastikan bahwa email sudah terdapat '@' dan '.' pada email yang dimasukkan.
private boolean cekEmail () { String mail = txtmail.getText(); boolean cek1 = false, cek2 = false; /* * Email must have @ and . on tld */ mail = mail.toLowerCase(); for (int i=0;i<mail.length();i++) { if (mail.charAt(i) == '@') { cek1 = true; } if (mail.charAt(i) == '.') { cek2 = true; } } return cek1 && cek2; }
pada dasarnya email berformat yourmail@mail.com maka yang kita perli cek adalah apakah karakter @ dan . sudah ada. Maka jalan dari function ini adalah mengambil string dari txtmail lali melakukan perulangan sebanyak n kali (sebanyak kata yang dita masukan di txtmail) lalu mengecek satu persatu dari karakter yang dimasukan. Hmm.... jika perulangan menemukan karakter @ maka nilai dari cek1 akan bernilai true dan jika ditemukan karakter . maka nilai dari cek2 menjadi true. Setelah itu cekEmail akan mengembalikan nilai berdasarkan nilai dari cek1 dan cek2 dengan logina AND.
Masih ingat logika and kan? jika salah satu terdapat nilai 0 maka hasilnya adalah 0. true =1 , false = 0
1 AND 1 = 1 1 AND 0 = 0 0 AND 1 = 0 0 AND 0 = 0
Okey, kita sudah selesai membuat fungsi gungsi yang kita butuhkan, sekarang adalah saatnya menaruh fungsi itu ke tempat yang benar.
Selanjutnya kita akan memberikan 2 fungsi ke dalam event formWindowOpened jadi ketika aplikasi dibuka maka fungsi yang kita masukan akan berjalan. Okey 2 fungsi itu adalah setGender dan buatRandomCapta.
Untuk penempatan code silahkan click kanan pada form window Pilih Events - Window - WindowOpened. Lalu masukan kedua fungsi tersebut. maka akan menjadi seperti ini
private void formWindowOpened(java.awt.event.WindowEvent evt) { // TODO add your handling code here: setGender(); buatRandomCapta(); }
code diatas membuat cbgender terisi male dan female dan menggenerate capta baru
selanjutnya adalah code yang akan dimasukan pada form txtpass dan txtrepass caranya click kanan pada txtpass lalu pilih Events - Key - KeyReleased. Ulangi untuk txtrepass juga dan keduanya dimasukan code cekPassword. Okay, seperti ini jadinya
private void txtpassKeyReleased(java.awt.event.KeyEvent evt) { // TODO add your handling code here: cekPassword(); } private void txtrepassKeyReleased(java.awt.event.KeyEvent evt) { // TODO add your handling code here: cekPassword(); }
code tersebut dipasang di event keyreleased tujuannya untuk mengecek kekuatan dan kesamaan password ketika kita mengetikan password
cepek? sama. LOLOLOLOLOL
tapi marilah kita berlanjut ke code berikutnya. Selanjutnya adalah membuat button reset bekerja, maka yang kita butuhkan adalah click kanan pada tombol reset pilih Events - Action - ActionPerformed. dan masukan code resetForm kedalamnya
private void btnresetActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: resetForm(); }
Lanjut ke button berikutnya, button cencel. Pada button ini kita akan membuat pertanyaan sebelum keluar, yaitu dengan pertanyaan ya atau tidak jadi keluar. Langsung saja pada codenya
private void btncancelActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: if (JOptionPane.showConfirmDialog(null,"Yakin akan keluar?","Confirm", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) { System.exit(0); } }
Code ini akan menampilkan pertanyaan, yakin akan keluar? dan jika tombol yes ditekan maka aplikasi akan keluar sedangkan jika tombol no ditekan maka akan kembali ke form register
Finish your work with last code
code yang paling penting yang akan kita masukan adalah code yang berapa pada button register, oke untuk memulai click kanan pada button register pilih Events - Action - ActionPerformed. lalu masukan code berikut
private void btnregisterActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: if (chkaggre.isSelected()) { if (cekCapta()) { if (cekEmail()) { if (cekPassword()) { // success String name = txtname.getText(); String email = txtmail.getText(); String pass = String.valueOf(txtpass.getPassword()); String gen = cbgender.getSelectedItem().toString(); JOptionPane.showMessageDialog(null, "Anda dibawah ini" + "\nNama: " + name + "\nEmail: " + email + "\nPass: " + pass + "\nGender: " + gen + "\n\nSetuju dengan pendaftaran ini"); }else { JOptionPane.showMessageDialog(null, "Password must match"); } }else { JOptionPane.showMessageDialog(null, "Masukan Email dengan benar", "Error", JOptionPane.INFORMATION_MESSAGE); } }else{ JOptionPane.showMessageDialog(null, "Capta yang kamu masukan salah", "Error", JOptionPane.ERROR_MESSAGE); } }else { JOptionPane.showMessageDialog(null,"Kamu harus setuju untuk melanjutkan", "Ding", JOptionPane.ERROR_MESSAGE); } }
Cukup panjang juga ya codenya, tapi akan ku jelaskan dengan sesingkat singkatnya. Code diatas menggunakan 4 lapis if yak mungkin itu semacam kue lapis namun bukan kue lapis yang aku maksud.
if yang pertama adalah if aggre. jika user sudah setuju maka menuju if selanjutnya dan jika tidak maka akan tampil pesan "kamu harus setuju untuk melanjutkan". If yang kedua adalah if capta benar. Jika capta yang dimasukan adalah benar maka code lanjut dan jika salah maka akan menampilkan pesan "Capta yang dimasukan salah". If yang ketiga adalah if email benar. Jika email yang di inputkan adalah benar maka akan lanjut dan jika salah maka akn menampilkan pesan "Masukan email dengan benar". Nah if yang terakhir adalah if password benar. Jika password benar maka program akan menampilkan pesan "Anda dibawah ini Name :
Okey, itulah hal tersingkat yang bisa aku berikan. :D
Oke, itulah hasil dari program yang dibuat :)
Download frmRegister.java via Wuala
{ 0 Komentar... read them below or add one }
Posting Komentar