Ciao a tutti!!!
ho provato a creare un piccola interfaccia grafica per capire come funzionano i Layered Pane...
In pratica all'inizio ho un bottone ... successivamente premendolo vorrei far comparire una label rossa sfruttando il Layered Pane...
però non riesco a visualizzare questa label.
Come posso fare??????
Ecco di seguito il codice con le 2 classi del Frame e del Panel che ospita il Layered Pane.
Grazie!!
Codice PHP:
public class Framesfondo extends JFrame {
PannelloSupporto pannelloSupporto;
public Framesfondo() throws IOException{
super();
pannelloSupporto = new PannelloSupporto(this);
pannelloSupporto.add(pannelloSupporto.myButton);
pannelloSupporto.setOpaque(true);
this.setContentPane(pannelloSupporto);
this.setExtendedState(MAXIMIZED_BOTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}
public class PannelloSupporto extends JPanel implements MouseListener {
JLayeredPane layerdPane = new JLayeredPane();
JLabel myLabel;
JButton myButton;
Framesfondo framesfondo;
public PannelloSupporto(Framesfondo framesfondo){
super();
setLayout(new FlowLayout());
this.framesfondo=framesfondo;
myButton = new JButton("Fai comparire la label");
myButton.addMouseListener(this);
myLabel = new JLabel();
myLabel.setPreferredSize(new Dimension(300, 300));
myLabel.setOpaque(true);
myLabel.setBackground(Color.RED);
myLabel.setText("Label");
myLabel.setBounds(100, 100, 200, 200);
layerdPane.add(myLabel, new Integer(1));
add(layerdPane);
}
public void mouseClicked(MouseEvent e) {
layerdPane.moveToFront(myLabel);
layerdPane.setLayer(myLabel, new Integer(1), 0);
framesfondo.setVisible(true);
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
}