2016-03-24 10 views
0

Geçen hafta için çalışan bir GUI oluşturmaya çalışıyorum. Izgara çanta düzenini ve şimdi aşağıdakileri denedim. Ancak, orada olmak için çalışmam gereken her şeyi alamıyorum. Ben dinleyici yaptıkÖrnek değişkenler için textarea ile java'da Gui

public class testGUI extends JPanel { 
    protected static double [] value; 
    JPanel jp = new JPanel(); 
    JTextArea jt = new JTextArea(10,40); 

    public testGUI() 
    { 
JButton btn1 = new JButton("SportCar"); 
JButton btn2 = new JButton("Van"); 
btn1.addActionListener(new ButtonListener()); 
btn2.addActionListener(new ButtonListener()); 
jp.add(jt); 
add(btn1); 
add(btn2); 
} 
public static void main(String[] args) { 
for (int i=0; i<args.length;i++) 
{ value[i]= Double.parseDouble(args[i]); 
} 
JFrame frame = new JFrame(); 
frame.getContentPane().add(new testGUI()); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.setSize(200, 200); 
frame.setVisible(true); 
    } 
} 

class ButtonListener implements ActionListener { 
ButtonListener() {} 
public void actionPerformed(ActionEvent e) { 
if (e.getActionCommand().equals("SportCar")) 
{ Vehicle car1 = new SportCar(value[0],value[1],value[2]); 
    System.out.println("You have made a new Sportcar"); 

} 
else if(e.getActionCommand().equals("Van")) 
{ Vehicle car1= new Van(value[0],value[1],value[2],value[3]); 
    System.out.println("You have made a new Van"); 

} 
    } 
} 

var aşağıdaki kodu alın ama ben yapamam iki şey örnek değişkenler görüntüleyen GUI bir metin alanı oluşturmak vardır. Ayrıca SportCar ve Van kurucuları da 3 ve 4 kullanıcı girişli sayı gerektiriyor, bu da yapamam. Lütfen çok uzun süre GUI'de takılı kalmama yardım edin. Her şeyden önce

+1

tam olarak ne işe yaramıyor? size beklediğiniz sonucu vermiyor mu? derleme zamanı hatası mı alıyorsunuz? çalışma zamanı hatası alıyor musunuz? – Stultuske

+0

Örneğin, değer dizisi sorunlara neden oluyor ve şu ana kadar yaptığım şeyin neden derlenmediğine inanıyorum. – duldi

+0

"sorunlara neden oluyor". Bu konuda daha spesifik olabilir misiniz? – Stultuske

cevap

1

. Dizininizi başlatmalısınız. ile döngü önce doğru yapılması Thats: Eğer bunu beyan olandan başka bir sınıf içinde erişmek istiyorsanız

value = new double[args.length]; 

Ayrıca bu kadar testGui.value[i] gibi statik bir dizi çağırmalıdır. Ayrıca, bu veri yapısına birçok farklı sınıfta erişmeniz gerekiyorsa, bir Liste kullanmayı ve Tek Ton Kalıbını kullanmayı düşünebilirsiniz.