Durchführung ActionListener innerhalb der JPanel

Hier, wollte ich eine Aktion ausführen, wenn eine Taste gedrückt wird, es ist ganz einfach, aber das Hauptproblem ist, durchgeführt werden, innerhalb einer erweiterten JPanel.
Es gibt vielleicht eine einfache Lösung wie " add action listener Taste und ruft actionperformed-Ereignis, aber mein Fall ist das nicht so, ich habe 4 Tasten(t1,t2,t3,t4) alle diese Tasten werden funktioniert innerhalb eines einzelnen ActionPerfomed Ereignis ae (siehe das segment code). Und später sehen Sie den code, der ruft einen anderen JButtons tr und hf ruft den actionlistener und in actionperformed Veranstaltungen.

für klare Verständlichkeit können Sie einen Blick auf den code...

 class Tracker extends JPanel
{

public static void main(String[] args) {
    new Tracker();    }

public Tracker()
{

JButton tr=new JButton("TRACKER APPLET");
tr.setBounds(720,170,100,20);

JButton rf=new JButton("REFRESH");
rf.setBounds(200,170,100,20);

boolean tc1=false,tc2=false,tc3=false,tc4=false;

JButton t1=new JButton(" ");
t1.addActionListener(this);
JButton t2=new JButton(" ");
t2.addActionListener(this);
JButton t3=new JButton(" ");
t3.addActionListener(this);
JButton t4=new JButton(" ");
t4.addActionListener(this);


public void actionPerformed(ActionEvent ae)
{
    if(ae.getSource()==t1)
    {
            tc1=true;
    }
    if(ae.getSource()==t2)
    {
            tc2=true;
    }
    if(ae.getSource()==t3)
    {
            tc3=true;
    }
    if(ae.getSource()==t4)
    {
            tc4=true;
    }

}


tr.addActionListener(new ActionListener(){
 public void actionPerformed(ActionEvent e){

    EventQueue.invokeLater(new Runnable() {
        @Override
        public void run() {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            } catch (ClassNotFoundException ex){}
            catch(InstantiationException ex){}
            catch(IllegalAccessException ex){}
            catch(UnsupportedLookAndFeelException ex) {}

                //some food here....


                           }
                        });
            }
             });        

    rf.addActionListener(new ActionListener(){
 public void actionPerformed(ActionEvent e){

    EventQueue.invokeLater(new Runnable() {
        @Override
        public void run()
        {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
                } 
            catch (ClassNotFoundException ex){}
            catch(InstantiationException ex){}
            catch(IllegalAccessException ex){}
            catch(UnsupportedLookAndFeelException ex) {}
                         //some extra work runs here...
        }
    });
 }
    });
add(tr);
add(rf);
add(t1);
add(t2);
add(t3);
add(t4);
}

Mein problem ist hier, ich konnte nicht implementiert ActionListener, wie die main-Klasse, die bereits die Erweiterung JPanel.
Ich versuche nur zu funktionieren mit Jbuttons :: wollte perfom eine einzelne Aktion aus, wenn die Tasten(t1|t2|t3|t4) und die JButtons(tr - |rf) gedrückt werden, in eine chronologische Reihenfolge..

vielen Dank im Voraus..

Siehe auch Wie zu Verwenden Aktionen.
Gibt es da wirklich keine Notwendigkeit einer Verlängerung der JPanel? ich.e können Sie nicht einfach eine Instanz, und fügen Sie die Schaltflächen etc, die

InformationsquelleAutor ram | 2013-02-16

Schreibe einen Kommentar