Java 如何创建多个按钮并对它们进行分区,以便所有这些按钮都显示在屏幕上

Java 如何创建多个按钮并对它们进行分区,以便所有这些按钮都显示在屏幕上,java,swing,Java,Swing,我试图创建一个计算器,可以执行简单的算术计算,但当我运行下面给出的代码时,屏幕上只显示最新的按钮。如果代码看起来太简单,那是因为我对摆动还是很不了解 我尝试过各种其他方法,包括Jform,但最终提出的问题多于答案 package javaapplication70; import java.util.Scanner; import java.awt.*; import javax.swing.*; public class calculatorGUI { public static v

我试图创建一个计算器,可以执行简单的算术计算,但当我运行下面给出的代码时,屏幕上只显示最新的按钮。如果代码看起来太简单,那是因为我对摆动还是很不了解

我尝试过各种其他方法,包括Jform,但最终提出的问题多于答案

package javaapplication70;
import java.util.Scanner;
import java.awt.*;
import javax.swing.*;

public class calculatorGUI {
    public static void main(String args[]){
        Scanner in = new Scanner(System.in);
        JFrame j = new JFrame("Calculator");
        j.setSize(1000,1500);
        j.setDefaultCloseOperation(3);
        JTextArea jt = new JTextArea(10,40);
        j.add(jt);
        JButton jb15 = new JButton("C");
        j.add(jb15);
        JButton jb = new JButton("1");
        jb.setSize(7, 7);
        j.add(jb);
        JButton jb1 = new JButton("2");
        j.add(jb1);
        JButton jb2 = new JButton("3");
        j.add(jb2);
        JButton jb3 = new JButton("4");
        j.add(jb3);
        JButton jb4 = new JButton("5");
        j.add(jb4);
        JButton jb5 = new JButton("6");
        j.add(jb5);
        JButton jb6 = new JButton("7");
        j.add(jb6);
        JButton jb7 = new JButton("8");
        j.add(jb7);
        JButton jb8 = new JButton("9");
        j.add(jb8);
        JButton jb9 = new JButton("0");
        j.add(jb9);
        JButton jb10 = new JButton("+");
        j.add(jb10);
        JButton jb11 = new JButton("-");
        j.add(jb11);
        JButton jb12 = new JButton("x");
        j.add(jb12);
        JButton jb13 = new JButton("/");
        j.add(jb13);
        JButton jb14 = new JButton("=");
        j.add(jb14);
        int num1=0,num2,res;
        j.setVisible(true);
    }
}

所有的按钮都在那里,它们只是在同一个位置相互叠放在一起,您应该考虑使用布局管理器来实现所需的结果

欢迎Tarun,但看起来您忘记添加代码了。请添加它,这样我们可以更好地帮助您。JFrame默认使用BorderLayout。您正试图将所有组件添加到BorderLayout的中心,但该操作无效,因为只能将单个组件添加到中心。该组件可以是一个带有所有按钮的JPanel。查看:有关入门的基本示例,请参见此。它使用
ScriptEngine
对文本字段中的表达式求值。它们只是在同一位置相互叠置-只有一个组件将由位于中心位置的BorderLayout管理。因此,只有最后添加的组件由BorderLayout管理。当框架可见时,最后一个按钮将给出一个大小/位置。对于所有其他组件,它们的大小为(0,0),因此无需绘制任何内容。因此,您应该使用另一个布局管理器添加一个JPanel,并将该面板添加到框架中。然后将按钮添加到面板中。