Modul 6
package modul61;
importjava.awt.Image;
importjavax.swing.*;
import java.io.*;
importjavax.swing.filechooser.FileFilter;
//perintah ini digunakan untuk mengimport class yang
digunakan pada saat akan mencompile
public class FormGambar extends javax.swing.JFrame {
DefaultListModelgambar;
// buat konstanta untuk
filter file
final String[]
EXT= {".jpg",
".jpeg",".gif",".tiff",".png"};
//perintah ini adalah deklarasi array yang berisi objek
dengan tipe string
publicFormGambar() {
//FormGambar adalah nama file yang digunakan
initComponents();
gambar = new DefaultListModel();
//perintah ini digunakan untuk membuat objek baru
jList1.setModel(gambar);
}
//perintah ini digunakan untuk menyimpan gambar
private void jList1MouseClicked(java.awt.event.MouseEventevt)
{
//perintah ini
digunakan untuk mengambil l nama file gambar yang akan di panggil
String nf =
jList1.getSelectedValue().toString();
//perintah ini digunakan untuk menseleksi file yang diimport
dengan cara merubah nilai ke tipe stringndan file akan disimpan di nf
ImageIcongbr = new ImageIcon(nf);
//perintah ini digunakan untuk merubah file gambar menjadi
icon
if (jCheckBox1.isSelected())
gbr = new ImageIcon(gbr.getImage().getScaledInstance(200,-1,
200));
// JikaCheckBox Fit ke Frame gambar di Check maka gambar
akan diset mempunyai lebar 200,
, dengan tinggi
menyesuaikan dan menggunakan algoritma
default
jLabel1.setIcon(gbr);}
//perintah ini
digunakan untuk menampilkan gambar sesuai dengan format gambar yang telah diset
saat mengklik check box fit frame
private void
jButton2ActionPerformed(java.awt.event.ActionEventevt) {
int index = jList1.getSelectedIndex();
//perintah yang digunakan untuk mengambil index
gambar.remove(index);
//perintah ini digunakan untuk meremove list Data model-nya
jLabel1.setIcon(null);
}
//perintah ini digunakan untuk menampilkan gambar dengan
nilai kosong bukan 0 (nol)
private void jCheckBox1ActionPerformed(java.awt.event.ActionEventevt)
{
private void
jButton1ActionPerformed(java.awt.event.ActionEventevt) {
JFileChooser fc = new JFileChooser();
//perintah ini digunakan untuk membuat objek baru dari kelas
JFileChooser
fc.addChoosableFileFilter(new JenisFile(EXT)) ;
//perintah ini
digunakan untuk mengatur Filter menggunakan Class jenis File aturan mengikuti
konstanta EXT
inthasil = fc.showOpenDialog(this);
//perintah ini digunakan untuk menampilkan kotak dialog
if (hasil == JFileChooser.APPROVE_OPTION) {
File file
= fc.getSelectedFile();
String nf
= file.getAbsolutePath();
//
perintah perulangan if dengan pernyataan jika dipilih yes maka ambil nama file
beserta pathnya
gambar.addElement(nf);}
}
// perintah ini
digunakan untuk memasukkan elemen ke listData Model gambar
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
newFormGambar().setVisible(true); } });
}
// Variables
declaration - do not modify
privatejavax.swing.JButton jButton1;
privatejavax.swing.JButton jButton2;
//JButton digunakan untuk melakukan suatu pemrosesan
privatejavax.swing.JCheckBox jCheckBox1;
//JCheckBox digunakan untuk melakukan pemilihan
privatejavax.swing.JLabel jLabel1;
//JLabel digunakan untuk menampilkan keteraangan
privatejavax.swing.JList jList1;
//JList digunakan untuk memilih dari suatu kumpulan daftar
privatejava.awt.ScrollPane scrollPane1;
//JScrollPane digunakan untuk mengatur ukuran gambar jika
terlalu besar dengan kotak dialog yang disediakan menggunakan scrollbar
Latihan :
gbr = new ImageIcon(gbr.getImage().getScaledInstance(190,-1,190));