L
Lobang Trader
I have been stumped with this problem for days.
The JPanel does not update the JLabel component into the new JButton.
Even if the JButton is a new JLabel, the panel doesn't update.
Any help a million times appreciated. thanks
import java.awt.BorderLayout;
import javax.swing.JComponent;
import javax.swing.JPanel;
public class Test extends JPanel {
private JComponent display;
public Test() {
setLayout(new BorderLayout());
display = createDisplay();
if(display != null)
add(display, BorderLayout.WEST);
}
public void setDisplay(JComponent display) {
this.display = display;
revalidate();
repaint();
}
protected JComponent createDisplay() {
return new javax.swing.JLabel("JLabel");
}
// Test code.
public static void main(String[] args) {
javax.swing.JFrame frame = new javax.swing.JFrame();
frame.setSize(java.awt.Toolkit.getDefaultToolkit().getScreenSize());
frame.setVisible(true);
Test test = new Test();
frame.add(test, BorderLayout.SOUTH);
test.setDisplay(new javax.swing.JButton("JButton"));
}
}
The JPanel does not update the JLabel component into the new JButton.
Even if the JButton is a new JLabel, the panel doesn't update.
Any help a million times appreciated. thanks
import java.awt.BorderLayout;
import javax.swing.JComponent;
import javax.swing.JPanel;
public class Test extends JPanel {
private JComponent display;
public Test() {
setLayout(new BorderLayout());
display = createDisplay();
if(display != null)
add(display, BorderLayout.WEST);
}
public void setDisplay(JComponent display) {
this.display = display;
revalidate();
repaint();
}
protected JComponent createDisplay() {
return new javax.swing.JLabel("JLabel");
}
// Test code.
public static void main(String[] args) {
javax.swing.JFrame frame = new javax.swing.JFrame();
frame.setSize(java.awt.Toolkit.getDefaultToolkit().getScreenSize());
frame.setVisible(true);
Test test = new Test();
frame.add(test, BorderLayout.SOUTH);
test.setDisplay(new javax.swing.JButton("JButton"));
}
}