π― 1. Pengantar Kontrol Input & Validasi
7
π Deskripsi
Kontrol input adalah komponen GUI yang digunakan untuk menerima data dari pengguna, sedangkan validasi adalah proses memastikan data yang dimasukkan benar, sesuai format, dan aman digunakan.
π§ Narasi
Dalam aplikasi nyata, data yang dimasukkan user seringkali tidak valid (kosong, salah format, dll). Tanpa validasi, aplikasi bisa error atau bahkan menghasilkan data yang salah.
π§© 2. Jenis-Jenis Kontrol Input (GUI Input Controls)
6
π Tabel Kontrol Input
| Kontrol | Fungsi |
|---|---|
| TextBox / Entry | Input teks |
| TextArea | Input teks panjang |
| ComboBox | Pilihan dropdown |
| RadioButton | Pilihan satu |
| CheckBox | Pilihan banyak |
| DatePicker | Input tanggal |
| File Picker | Pilih file |
π§ Narasi
Pemilihan kontrol input sangat penting. Misalnya:
- Input gender β gunakan RadioButton
- Input negara β gunakan ComboBox
- Input deskripsi β gunakan TextArea
π§± 3. Konsep Validasi Data
7
π Deskripsi
Validasi memastikan bahwa data:
- Tidak kosong
- Sesuai tipe data
- Sesuai aturan (rule) tertentu
π Alur Validasi
- User input data
- Sistem cek validasi
- Jika salah β tampilkan error
- Jika benar β lanjut proses
π§ Narasi
Validasi adalah βgerbangβ sebelum data diproses. Tanpa validasi, sistem menjadi rentan error dan tidak reliable.
π§ͺ 4. Jenis-Jenis Validasi
π Tabel Validasi
| Jenis Validasi | Contoh |
|---|---|
| Required | Tidak boleh kosong |
| Format | Email harus ada β@β |
| Numeric | Hanya angka |
| Range | Umur 0β100 |
| Length | Minimal 8 karakter |
| Custom | Aturan khusus |
π§ Narasi
Setiap jenis validasi digunakan sesuai kebutuhan. Misalnya:
- Password β minimal panjang
- Email β format tertentu
- Umur β harus angka
βοΈ 5. Teknik Validasi dalam GUI
π Pendekatan
- Client-side validation β langsung di GUI
- Real-time validation β saat user mengetik
- On submit validation β saat tombol ditekan
π§ Narasi
Validasi real-time memberikan pengalaman pengguna yang lebih baik karena error langsung terlihat tanpa harus submit.
π» 6. Tutorial Praktikum: Validasi Input (Python Tkinter)
π― Studi Kasus
Form input:
- Nama (tidak boleh kosong)
- Umur (harus angka)
π» Kode Program
import tkinter as tk
from tkinter import messagebox
def validasi():
nama = entry_nama.get()
umur = entry_umur.get()
if nama == "":
messagebox.showerror("Error", "Nama tidak boleh kosong")
elif not umur.isdigit():
messagebox.showerror("Error", "Umur harus angka")
else:
messagebox.showinfo("Sukses", f"Halo {nama}, umur {umur}")
app = tk.Tk()
app.title("Validasi Input")
tk.Label(app, text="Nama").pack()
entry_nama = tk.Entry(app)
entry_nama.pack()
tk.Label(app, text="Umur").pack()
entry_umur = tk.Entry(app)
entry_umur.pack()
tk.Button(app, text="Submit", command=validasi).pack()
app.mainloop()
π§ Penjelasan
get()β ambil inputisdigit()β cek angkamessageboxβ feedback ke user
π¨ 7. Feedback Validasi (User Experience)
8
π Bentuk Feedback
- Warna merah (error)
- Pesan teks (error message)
- Highlight field
- Notifikasi popup
π§ Narasi
Validasi yang baik tidak hanya benar secara logika, tetapi juga jelas bagi pengguna.
β οΈ 8. Kesalahan Umum dalam Validasi
β Tabel Kesalahan
| Kesalahan | Dampak |
|---|---|
| Tidak validasi | Data kacau |
| Pesan error tidak jelas | User bingung |
| Validasi terlalu ketat | UX buruk |
| Tidak konsisten | Sulit digunakan |
π§ Narasi
Validasi yang buruk bisa membuat aplikasi terasa βmenyebalkanβ bagi user.
π§± 9. Studi Kasus Nyata
6
π Contoh Implementasi
- Login system (username/password)
- Form registrasi
- Input transaksi keuangan
- Sistem akademik
π§ Narasi
Dalam sistem nyata, validasi juga berkaitan dengan keamanan (security), bukan hanya kebenaran data.
π― 10. Best Practice Validasi
β Tips
- Validasi secepat mungkin
- Gunakan pesan yang jelas
- Jangan terlalu banyak aturan
- Kombinasikan UI + logika
- Selalu uji berbagai input
π 11. Rangkuman
π Inti Materi
- Kontrol input = alat input data
- Validasi = memastikan data benar
- Banyak jenis validasi (format, angka, dll)
- Harus memberikan feedback ke user
- Sangat penting untuk kualitas aplikasi
π 12. Latihan & Tugas
βοΈ Latihan
- Apa itu validasi input?
- Sebutkan 3 jenis validasi!
- Mengapa validasi penting?
π» Tugas Praktikum
Buat aplikasi:
- Input: Nama, Email, Umur
- Validasi:
- Nama tidak kosong
- Email harus mengandung β@β
- Umur harus angka
- Output:
- Jika valid β tampilkan data
- Jika tidak β tampilkan error
π Penutup
Materi ini menjadi dasar untuk:
- Form aplikasi profesional
- Sistem database
- Aplikasi berbasis user input