简单GUI计算器应用程序java

简单GUI计算器应用程序java,java,swing,user-interface,math,calculator,Java,Swing,User Interface,Math,Calculator,我是新手,有点问题。 我用netbeans设计视图创建了一个gui,其中包含30个JTextFields。 然后将这些文本字段排列成3列,每列10个文本字段。 因此,我们的想法是让用户能够在其中两列中输入数字 然后,将前两列的对应行与结果相乘,结果显示在第三列的textfields中。到目前为止我有 float a1 = Float.parseFloat(text1.getText()) //This 30 times one for each field float [] c

我是新手,有点问题。 我用netbeans设计视图创建了一个gui,其中包含30个JTextFields。 然后将这些文本字段排列成3列,每列10个文本字段。 因此,我们的想法是让用户能够在其中两列中输入数字 然后,将前两列的对应行与结果相乘,结果显示在第三列的textfields中。到目前为止我有

    float a1 = Float.parseFloat(text1.getText()) //This 30 times one for each field

    float [] cola; 
    cola = newfloat[10] //I did this 3 times to create 3 columns

    cola[0] = a1 // I did this to place the variables in the columns
    cola[1] = a2 // cola and colb for retrieved from user and colc for results
这将继续创建3列。。。 然后我将它们相乘,就像这样

     result = (colla*colb);
    colc.setText(String.valueOf(result));

但这不起作用。我希望得到的结果是,将我排列到“colc”中的10个文本字段作为用户从2列文本字段输入的结果。我认为我处理这个问题的方法完全错误,或者可能只是缺少一行代码?任何帮助都将不胜感激

一次解决一个问题。从添加一列数字的工作开始。将
N
更改为
2
,并将
GridLayout(0,1)
更改为
GridLayout(1,0)
;现在,您有了一个跨行添加的行面板。使用
GridLayout(0,1)
将其中十个添加到
JPanel
。瞧


有关详细信息,请查看API。

对于您在评论中提到的问题(为了清晰起见,我将在这里重复,因为评论中的代码不太好看):

publicstaticvoidmain(字符串[]args){
int-arr[]={9,9,9};
int arr1[]={9,9,9};
整数和[]={0,0,0};
对于(int i=0;i
这里面有一个编译错误,还有一件事你可能也不想要

  • sum=arr[i]+arr1[i]将不会编译。如果你花点时间考虑一下。。。在左侧有一个数组(长度为3的int数组),您尝试在右侧为该数组分配一个int。您可能想做的是
    sum[i]=arr[i]+arr1[i],
  • System.out.println(总和)
    将输出乱码,因为数组的
    toString实现得很差。您可能想要使用的是方法

  • 这是相当基本的数组操作,因此您可能需要再次阅读Java数组教程。

    使用
    GridLayout
    而不是默认的
    Flowlayout
    。如果出现错误,请编辑您的问题以包括,我将根据我的知识提出建议。

    “不起作用”告诉我们的很少。如果您看到任何错误或异常,请发布它们。如果你看到不良行为,请详细描述。另外,何时提取和解析文本字段的文本?希望不是在程序开始时,而是在某个按钮的ActionListener中。请提供更重要的细节,以便我们有机会帮助您。对不起,我没有具体说明。我得到的错误是运算符*不能应用于float[],float[]。我是我在计算按钮的ActionListener中提取和解析错误告诉你到底出了什么问题--你试图将一个数组乘以另一个数组,但这行不通。考虑使用for循环并将每个数组项与另一个数组项相乘。请提供更多的代码。显然,您正在尝试将两个数组相乘。因此,查看声明等内容会很有用。这就是我到目前为止所拥有的按钮的所有代码,我只是不断尝试使用两个变量进行不同的操作,看看它是否有效。是的,我正在尝试将2个数组组合在一起并打印结果。我将在谷歌上搜索“使用for循环并将每个数组项和另一个数组项相乘”,并查看我计算出的+1值,以便进行有价值的评论。
    public static void main(String[] args) { 
      int arr[] = {9,9,9}; 
      int arr1[] = {9,9,9}; 
      int sum[] = {0,0,0}; 
      for (int i=0; i < arr.length; i++) 
        sum = arr[i] + arr1[i]; 
      System.out.println(sum); 
    }