Bagaimana meremove Component Object Java Swing

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Bagaimana meremove Component Object Java Swing

fanjavaid
Salam, saya membuat aplikasi gallery menggunakan Java Swing, dimana
terdapat JTable yang menampung nama-nama pemilik gallery.
Gambar saya simpan di filesystem,
Ketika nama pemilik saya pilih, maka akan keluar gallery yang
bersangkutan. Untuk itu sudah bisa saya tangani, namun ada kendala saat
penampilan gallery tersebut.
Karena tiap gallery saya tampung di JPanel, maka setiap berpindah
pemilihan pemilik di JTable, gallery tersebut bertambah gambarnya
bukannya ditimpa.

Mungkin untuk gambar biar jelas bisa dilihat disini : GAMBAR

Dalam pembuatan JPanel untuk gambarnya saya buat sebagai berikut :

File folder = new File("lokasi/gambarnya");
         File [] listOfFiles = folder.listFiles();

         System.out.println(path+" = "+listOfFiles.length);

         int maxFiles = listOfFiles.length;
         int maxView  = 15;

         for (int i = 0; i < listOfFiles.length; i++) {
             if(listOfFiles[i].isFile()) {
                 files = listOfFiles[i].getName();

                 if(files.endsWith(".jpg") || files.endsWith(".JPG")) {
                     final String newPath = path+files;

                     try {
                         File showFile = new File(newPath);
                         Image image = ImageIO.read(showFile);

                         JPanel panel = new
BackgroundImageRounded(showFile);
                         panel.setLayout(null);
                         view.getPanelStreamData().add(panel);
                     } catch (Exception e) {
                         e.printStackTrace();
                     }
                 }
             }
         }

Saya beranggapan bahwa kenapa gambar jadi bertambah karena object2
komponen Swingnya juga bertambah tiap dipilih data pemiliknya.
Pertanyaan saya, bagaimana ketika saya memilih pemilik object2 yg
sebelumnya diremove/dihapus/direplace dengan data yang baru saja
dipilih.

Mohon bantuannya, terima kasih.