2016-03-23 7 views
0

So habe ich zwei Schaltflächen erstellt und ich möchte eine bestimmte Aufgabe ausführen, wenn Sie auf die Schaltflächen klicken. Wenn Button 1 (b1) mit dem ActionListener angeklickt wird, möchte ich ein Objekt von Van erstellen und die Instanzvariablen in einem JTextarea oder JTable anzeigen. Wenn Sie beispielsweise auf die Schaltfläche "Van" klicken, besteht die Aktion darin, ein Van-Objekt zu erstellen und die Werte der Instanzvariablen abzurufen und sie in einer JTextArea/JTable zu drucken. Unten ist mein Code so weit:Wie zeige ich in JTextarea oder JTable

import java.awt.Color; 
import java.awt.FlowLayout; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JPanel; 
import javax.swing.JTable; 


public class TestButton extends JFrame{ 

JTable table; 

public TestButton(){ 

    setLayout(new FlowLayout()); 
} 
static class ActionTwo implements ActionListener{ 

    @Override 
    public void actionPerformed (ActionEvent evt){ 

     Vehicle sport = new Sportcar (200, 1500, 220); 

    } 
    } 

    static class Action implements ActionListener{ 

    @Override 
    public void actionPerformed (ActionEvent evt){ 

     Vehicle aVan = new Van(100,0.9,3500,160.4); 


    } 

    } 

    public static void main (String [] args){ 

    JFrame frame = new JFrame ("Type of Vehicle"); 
    frame.setVisible(true); 
    frame.setSize(400,200); 
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.setLocationRelativeTo(null); 
    JPanel panel = new JPanel(); 
    panel.setBackground(Color.black); 
    JButton b1 = new JButton("Van"); 
    JButton b2 = new JButton("Sports Car"); 
    panel.add(b1); 
    panel.add(b2); 
    frame.add(panel); 
    b1.addActionListener(new Action()); 
    b2.addActionListener(new ActionTwo()); 

    } 




    } 

Antwort

0

einen Blick auf den

Java tutorial on Action Listeners

hat dies wird tun, was Sie es tun mögen, aber Sie sollten ein volles Verständnis davon zu bekommen, was geschieht durch dieses Tutorial lesen .

public static void main (String [] args){ 
    JTextField text = new JTextField(); 
    ActionListener textSetter = new ActionListener() { 

     @Override 
     public void actionPerformed(ActionEvent e) { 
      JButton clicked = (JButton) e.getSource(); 
      text.setText(clicked.getText()); 
     } 
    }; 

    JButton btnVan = new JButton("Van"); 
    btnVan.addActionListener(textSetter); 
    JButton btnCar = new JButton("Sports Car"); 
    btnCar.addActionListener(textSetter); 

    JPanel btnPanel = new JPanel(); 
    btnPanel.add(btnVan); 
    btnPanel.add(btnCar); 

    JPanel mainPanel = new JPanel(new BorderLayout()); 
    mainPanel.add(text, BorderLayout.NORTH); 
    mainPanel.add(btnPanel, BorderLayout.SOUTH); 

    JFrame frame = new JFrame ("Type of Vehicle"); 
    frame.add(mainPanel); 
    frame.setSize(400,200); 
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.setLocationRelativeTo(null); 
    frame.setVisible(true); 
} 
+0

Danke Typ, sicher wird es auflesen. Ich hasse es, nicht zu verstehen, was passiert, aber ich bekomme das meiste von dem, was du getan hast, es sieht einfach sehr gut aus. Ich mag es und werde es aufnehmen! –