Forum » Programiranje » java, Swing in vmesnik ActionListener
java, Swing in vmesnik ActionListener
![](https://static.slo-tech.com/stili/avatar_gray.gif)
marjan_h ::
Malo se igram z grafičnim uporabniškim vmesnikom,(Swing) pa me zanima če kdo ve; Kako ločiš dogodke med seboj?
Trenutno imam dva gumba, in ko kliknem prvega se izpiše "Kliknil si me", in ko drugega enako. Kako ločiš dogodka; Ko klikneš prvega je en dogodek, ko drugega drug.
Imam sledečo kodo:
Trenutno imam dva gumba, in ko kliknem prvega se izpiše "Kliknil si me", in ko drugega enako. Kako ločiš dogodka; Ko klikneš prvega je en dogodek, ko drugega drug.
Imam sledečo kodo:
import java.awt.*; import java.awt.event.*; import javax.swing.*; class Primer extends JFrame implements ActionListener{ JButton button1, button2; public Primer(){ super("Okno"); Container vsebnik = getContentPane(); vsebnik.setLayout(null); button1 = new JButton("Klik 1"); button2 = new JButton("Klik 2"); button1.addActionListener(this); button2.addActionListener(this); button1.setBounds(20, 20, 100, 40); button2.setBounds(140,20,100,40); vsebnik.add(button1); vsebnik.add(button2); } public void actionPerformed(ActionEvent e){ System.out.println("Kliknil si me"); } } public class SwingTest{ public static void main (String args[]){ JFrame frame = new Primer(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(500, 500); frame.setVisible(true); } }
![](https://static.slo-tech.com/stili/avatar.gif)
Mavrik ::
Tipično se to naredi tak, da na vsakega daš drug ActionListener. Lahko pa tudi pogledaš ActionEvent.source v actionPerformed, sam to ti bo naredilo špagetasto kodo.
The truth is rarely pure and never simple.
![](https://static.slo-tech.com/stili/avatar_gray.gif)
marjan_h ::
Ne razumem čist dobr. Ali moram narediti nov class pa implementirat ActionListener, potem pa to uporabiti kot nov ActionListener, recimo kot ActionListener2?
Zgodovina sprememb…
- spremenil: marjan_h ()
![](https://static.slo-tech.com/stili/avatar_gray.gif)
marjan_h ::
Sedaj sem takole naredil, kot si rekel in dela.
Tisto, da pa daš drug ActionListener pa ne vem točno kaj si mislil.
public void actionPerformed(ActionEvent e){ if (e.getSource().equals(button1)) System.out.println("Kliknil si me"); else if(e.getSource().equals(button2)) System.out.println("Klikni si me drugic"); }
Tisto, da pa daš drug ActionListener pa ne vem točno kaj si mislil.
![](https://static.slo-tech.com/stili/avatar.gif)
Mavrik ::
Drugo. Instanco. Objekta.
button1.addActionListener(new Actionlistener() { public void actionPerformed(ActionEvent e){ System.out.println("Aua!"); } }; button2.addActionListener(new Actionlistener() { public void actionPerformed(ActionEvent e){ System.out.println("Ma nehi no!"); } };
The truth is rarely pure and never simple.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [java] Osnovna vprašanjaOddelek: Programiranje | 2667 (1674) | killa bee |
» | 4 v vrsto [java pomoč]Oddelek: Programiranje | 1550 (1377) | Spura |
» | java pomoč, verjetno event handlerOddelek: Programiranje | 1079 (912) | Chandler258 |
» | [Java] ActionListener, ButtonOddelek: Programiranje | 1328 (1151) | fiction |
» | [Java] ZmešnjavaOddelek: Programiranje | 2095 (1600) | ]Fusion[ |