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