Tugas Pertemuan 14 - Graphical User Interface
Program ImageViewer V-1
Kelas ImageViewer
Kelas ini adalah antarmuka utama aplikasi. Fungsinya mencakup :
- Menyediakan GUI untuk membuka, menampilkan, memodifikasi, dan menyimpan gambar.
- Mengintegrasikan menu untuk fungsi File (open, close, quit) dan Filter (darker, lighter, threshold).
- Berinteraksi dengan kelas lain untuk memuat gambar ke GUI dan menerapkan filter.
Kelas ImagePanel
Kelas ini bertanggung jawab untuk menampilkan gambar pada GUI :
- Digunakan oleh ImageViewer sebagai komponen GUI yang menampilkan gambar.
- Mendukung metode untuk mengganti gambar (melalui setImage) atau membersihkannya (melalui clearImage).
- Menggunakan metode Swing untuk mengatur ukuran dan memperbarui tampilan panel.
Kelas ImageFileManager
Kelas ini adalah manajer file gambar :
- Membaca (memuat) gambar dari file dengan memanfaatkan ImageIO.
- Menyimpan gambar yang dimodifikasi kembali ke file.
- Menyediakan format standar gambar (dalam kode ini, jpg) untuk penyimpanan.
Kelas OFImage
Kelas ini adalah kelas gambar yang diperluas, diturunkan dari BufferedImage:
- Memberikan cara mudah untuk mengakses dan memodifikasi piksel gambar secara langsung.
- Menambahkan fitur manipulasi warna seperti darker (menggelapkan), lighter (mencerahkan), dan threshold (mengubah gambar ke skala hitam-putih berbasis intensitas).
- Digunakan oleh ImageViewer untuk memanipulasi gambar yang ditampilkan.
Diagram Kelas
Hubungan Antar Kelas :
- ImageViewer adalah kelas inti yang memanfaatkan ImagePanel untuk menampilkan gambar, ImageFileManager untuk mengelola file, dan OFImage untuk manipulasi gambar.
- ImagePanel bekerja sebagai antarmuka visual yang menampilkan gambar dari OFImage.
- ImageFileManager bertanggung jawab atas integrasi antara aplikasi dan sistem file, sementara OFImage menyediakan mekanisme manipulasi gambar
Login Panel
Program di atas adalah aplikasi login sederhana berbasis Java Swing dengan fitur berikut:
- Input Login :
Username : Field untuk memasukkan username.
Password : Menggunakan JPasswordField agar lebih aman.
- Validasi :
Kredensial diverifikasi dengan nilai hardcoded:
Username : christo
Password : 12345
Menampilkan pesan "Login Granted!" jika valid, dan "Login Denied" jika tidak.
- Tombol :
Login : Memeriksa kredensial dan menampilkan pesan hasil validasi.
Cancel : Menghapus input username dan password, lalu mengembalikan fokus ke kolom username.
- Antarmuka :
Menggunakan GridLayout untuk tata letak sederhana.
Panel menampilkan input, label, dan tombol secara terstruktur.
Implementasi
Login :
Password benar :
Password salah :
Komentar
Posting Komentar