Beberapa waktu yang lalu saya membuat sebuah komponen yang berupa panel dengan pagination yang berisi button-button. Ketika terjadi pergantian page saya menggunakan method repaint untuk menggambar ulang panel.
Komponen ini berjalan dengan baik saat saya letakkan pada JFrame, namun ketika saya letakkan pada JDialog, hasilnya tidak seperti yang diharapkan, dimana pada page selain 1, button tidak muncul.
Setelah googling saya menemukan petunjuk bahwa jika kita menggunakan method remove maupun removeAll dari JPanel, maka kita harus memanggil method validate dan repaint.
Dan, voila...
Komponen saya sudah berjalan dengan semestinya, baik di JFrame maupun JDialog.
Happy coding... :)
referensi : www.stackoverflow.com
SwingUtilities.invokeLater(new Runnable() { @Override public void run() { panelPaging.repaint(); panelContent.repaint(); } });
Komponen ini berjalan dengan baik saat saya letakkan pada JFrame, namun ketika saya letakkan pada JDialog, hasilnya tidak seperti yang diharapkan, dimana pada page selain 1, button tidak muncul.
Setelah googling saya menemukan petunjuk bahwa jika kita menggunakan method remove maupun removeAll dari JPanel, maka kita harus memanggil method validate dan repaint.
SwingUtilities.invokeLater(new Runnable() { @Override public void run() { panelPaging.validate(); panelPaging.repaint(); panelContent.validate(); panelContent.repaint(); } });
Dan, voila...
Komponen saya sudah berjalan dengan semestinya, baik di JFrame maupun JDialog.
Happy coding... :)
referensi : www.stackoverflow.com
Comments
Post a Comment