Dio mio e' terribile!! Ma e' il linguaggio che e' una merda o sono io che non lo so usare??
codice:
public class Demo extends JPanel implements ActionListener{
CardLayout cl = new CardLayout();
JPanel welcomePane;
JPanel balancePane;
JButton balanceButton = new JButton();
JButton welcomeButton = new JButton();
public Demo() {
this.setLayout(cl);
this.setBounds(0, 100, 800,800);
welcomePane = new JPanel();
welcomePane.setLayout(null);
welcomePane.setBackground(Color.red);
welcomeButton.setText("Welcome");
welcomeButton.setBounds(new Rectangle(90, 180, 196, 56));
welcomeButton.addActionListener(this);
welcomePane.setName("welcomePane");
this.add("welcomePane",welcomePane);
welcomePane.add(welcomeButton, null);
balanceButton.setText("ShowBalance");
balanceButton.setBounds(new Rectangle(154, 181, 196, 56));
balanceButton.addActionListener(this);
balancePane = new JPanel();
balancePane.setLayout(null);
balancePane.setBackground(Color.blue);
balancePane.add(balanceButton, null);
balancePane.setName("balancePane");
this.add("balancePane",balancePane);
Schifenza schifo = new Schifenza();
schifo.setName("schifo");
this.add("schifo",schifo);
}
public void actionPerformed(ActionEvent e) {
if ( ( (JButton) e.getSource()).getText().equals("ShowBalance")) {
showPanel(1);
}
else if ( ( (JButton) e.getSource()).getText().equals("Welcome")){
showPanel(2);
}
}
private void showPanel(int num) {
if (num == 2) {
cl.show(this, "balancePane");
else if (num == 1){
cl.show(this, "welcomePane");
}
}
Cosi l'applicazione funziona...l'ascoltatore di eventi (e i bottoni che li generano) sono interni al pannello in cui ho il CardLayout e in cui le schede (pannellini con bottoni) si susseguono...ma se faccio come nel codice che ho postato nel primo messaggio (cioe' metto i bottoni e l'ascoltatore in un altro pannello e a seconda del bottone premuto richiamo una funzione modifica() nel mio pannello con card layout non succede nulla...
Percheeeeeeeeeeeeee??? vi prego aiutate una dolce fanciulla..
Grazie