Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 2 odgovora
  • 2.252 pregleda

Najnovija ↓

ActionListener pocetnicko pitanje 11.01.2010. u 14:28 · pre 204 meseca #1
Ne mogu nikako da nateram ovaj jednostavan program da klikom na jedan button nestane drugi button i obrnuto evo mog pokusaja:

Code:
public class TestAction extends JFrame implements ActionListener {
    boolean p1Visible=true;
    boolean p2Visible=true
    ;
    JButton b1= new JButton("Klikni 1");
    JButton b2 = new JButton("Klikni 2");

    public TestAction() {
        super("Test");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        BorderLayout border = new BorderLayout();
        setLayout(border);
        //prvi panel
        JPanel p1 = new JPanel();
        b1.addActionListener(this);
        p1.add(b1);
        p1.setVisible(p1Visible);
        //drugi panel
        JPanel p2 = new JPanel();
        b2.addActionListener(this);
        p2.add(b2);
        p2.setVisible(p2Visible);
        
        add(p1, BorderLayout.NORTH);
        add(p2, BorderLayout.SOUTH);
        pack();

        
    }
    public static void main(String[] args){
        TestAction name = new TestAction();
        name.setVisible(true);
    }
    @Override
    public void actionPerformed(ActionEvent evt) {
        Object source = evt.getSource();
        if(source ==  b1){
            p2Visible = false;
        }
        else if (source == b2){
            p1Visible = false;
        }
        repaint();
    }

}


Rucno kada postavim setVisible onda radi ocigledno je problem u eventu.

Unapred hvala na svakoj sugestiji.
Re: ActionListener pocetnicko pitanje 11.01.2010. u 15:50 · pre 204 meseca #2
Ti ovde, blago meni, menjaš samo vrednost boolean promenljivih, ali ne i visible proeprty samih kontrola (panela).

Dakle, zaboravio si

p1.setVisible(p1Visible)

i

p2.setVisible(p2Visible);

Potpis
OTPOR blokadi ulica, OTPOR blokiranom Beogradu, OTPOR blokiranoj Srbiji
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme