2014-03-18 38 views
-3

我希望有人来检查这个程序我很难得到结果,它不会显示。我尝试了很多方法。请帮助我刚开始学习java。请帮助这里是我的代码:上显示的结果有问题JAVA如何获得JTextfield上的值

import java.awt.*; 
import javax.swing.*; 
import java.awt.event.*; 

class Counter extends JFrame implements ActionListener 
{ 
JPanel row1 = new JPanel(); 
JLabel title = new JLabel("Monthly Total Sales"); 

JPanel row2 = new JPanel(); 
JLabel week1 = new JLabel("1st Week"); 
JTextField text1 = new JTextField(10); 
JLabel week2 = new JLabel("2nd Week"); 
JTextField text2 = new JTextField(10); 

JPanel row3 = new JPanel(); 
JLabel week3 = new JLabel("3rd Week"); 
JTextField text3 = new JTextField(10); 
JLabel week4 = new JLabel("4th Week"); 
JTextField text4 = new JTextField(10); 

JPanel row4 = new JPanel(); 
JLabel month = new JLabel("Monthly Total:"); 

JPanel row5 = new JPanel(); 
JButton count = new JButton("TOTAL"); 

public Counter() 
{ 
    super("Monthly Earnings"); 
    setSize(500,500); 
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    setVisible(true); 

    Container pane = getContentPane(); 
    GridLayout layout = new GridLayout(5,1,2,2); 
    pane.setLayout(layout); 

    FlowLayout layout1 = new FlowLayout(FlowLayout.CENTER,2,2); 
    row1.setLayout(layout1); 
    row1.add(title); 
    pane.add(row1); 

    GridLayout layout2 = new GridLayout(1,2,2,2); 
    row2.setLayout(layout2); 
    row2.add(week1); 
    row2.add(text1); 
    row2.add(week2); 
    row2.add(text2); 
    pane.add(row2); 

    GridLayout layout3 = new GridLayout(1,2,2,2); 
    row3.setLayout(layout3); 
    row3.add(week3); 
    row3.add(text3); 
    row3.add(week4); 
    row3.add(text4); 
    pane.add(row3); 

    FlowLayout layout4 = new FlowLayout(FlowLayout.CENTER,2,2); 
    row4.setLayout(layout4); 
    row4.add(month); 
    pane.add(row4); 

    FlowLayout layout5 = new FlowLayout(FlowLayout.CENTER,2,2); 
    row5.setLayout(layout5); 
    row5.add(count); 
    pane.add(row5); 

     setContentPane(pane); 
    setVisible(true); 

} 
public void actionPerformed(ActionEvent tot) 
{ 
    if(tot.getSource()==count) 
    { 
     float we1=0; 
     we1 = Float.parseFloat(text1.getText()); 
     float we2=0; 
     we2 = Float.parseFloat(text2.getText()); 
     float we3=0; 
     we3 = Float.parseFloat(text3.getText()); 
     float we4=0; 
     we4 = Float.parseFloat(text4.getText()); 

     float total = (we1+we2+we3+we4); 
     month.setText("Php"+total); 

    } 

} 
public static void main(String args[]) 
{ 
    Counter counting = new Counter(); 

} 
    } 

.. :(

+0

您有问题要问?发生了什么?出了什么问题? – Clark

+0

结果是什么,它应该在哪里显示?请更清楚并尽量减少这个例子。 – NeplatnyUdaj

+0

即时尝试显示结果。但它不会工作.. – user3434493

回答

1

你需要与你的按钮注册的ActionListener为被调用

count.addActionListener(this); 
+0

哦耶!忘记注册了..谢谢先生! – user3434493

1

你根本不添加任何地方ActionListener的,所以当你点击“TOTAL”按钮,会发生什么

1

actionPerformed方法获取的文本字段分配文本一个字符串到文本字段的名称 -
.getText();