Java 如何使我的CE按钮占据最后一行?
我只想把最后一行变成一个按钮。实际上,这是我计算器程序的一部分。我为三角计算创建了另一个面板。当我删除sin、cos、tan按钮时,计算器看起来不太好,最后一行只有一个按钮,其余的都是空白。因此,在删除sin、cos、tan按钮后,我尝试将CE按钮的大小增加.setsize(),但没有成功。我希望有人能帮我Java 如何使我的CE按钮占据最后一行?,java,jframe,jpanel,jbutton,Java,Jframe,Jpanel,Jbutton,我只想把最后一行变成一个按钮。实际上,这是我计算器程序的一部分。我为三角计算创建了另一个面板。当我删除sin、cos、tan按钮时,计算器看起来不太好,最后一行只有一个按钮,其余的都是空白。因此,在删除sin、cos、tan按钮后,我尝试将CE按钮的大小增加.setsize(),但没有成功。我希望有人能帮我 public final class Cal implements ActionListener, KeyListener { Font font = new Font("SansSeri
public final class Cal implements ActionListener, KeyListener {
Font font = new Font("SansSerif", Font.BOLD, 32);
JFrame frame = new JFrame();
JPanel panel = new JPanel(new GridLayout(6, 4, 4, 4));
JTextField field = new JTextField("0.0");
JButton[][] keys = new JButton[6][5];
final int plus = 1;
final int minus = 2;
final int times = 3;
final int divide = 4;
final int sin = 5;
final int cos = 6;
final int ce = 7;
final int perc = 8;
int op;
double ans = 0;
double accum = 0;
boolean newNumb = true;
String calc = "";
//Assign method
public void assign() {
frame.setTitle("Scientific Calculator");
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setLayout(new BorderLayout());
frame.add(panel, BorderLayout.CENTER);
field.setHorizontalAlignment(JTextField.RIGHT);
field.setEditable(true);
field.setForeground(Color.red);
field.setBackground(Color.white);
field.setToolTipText("Input Box");
field.setFont(font);
frame.add(field, BorderLayout.NORTH);
frame.setVisible(true);
frame.setSize(430, 430);
frame.addKeyListener(this);
// field.addKeyListener(this); //renders field uneditable
field.requestFocus();
panel.setBackground(Color.black);
}
[enter image description here][1]//buttons Method
public void buttons() {
String action;
int i, j;
// create the keys
keys = new JButton[6][5];
keys[0][0] = new JButton("7");
keys[0][1] = new JButton("8");
keys[0][2] = new JButton("9");
keys[0][3] = new JButton("+");
keys[1][0] = new JButton("4");
keys[1][1] = new JButton("5");
keys[1][2] = new JButton("6");
keys[1][3] = new JButton("-");
keys[2][0] = new JButton("1");
keys[2][1] = new JButton("2");
keys[2][2] = new JButton("3");
keys[2][3] = new JButton("x");
keys[3][0] = new JButton("0");
keys[3][1] = new JButton(".");
keys[3][2] = new JButton("=");
keys[3][3] = new JButton("/");
keys[4][0] = new JButton("x³");
keys[4][1] = new JButton("x²");
keys[4][2] = new JButton("%");
keys[4][3] = new JButton("√");
keys[5][0] = new JButton("sin");
keys[5][1] = new JButton("tan");
keys[5][2] = new JButton("cos");
keys[5][3] = new JButton("CE");
//i = rows j =colums
for (i = 0; i < 6; i++) {
for (j = 0; j < 4; j++) {
keys[i][j].setFont(font);
action = (new Integer(i)).toString() + (new Integer(j)).toString();
keys[i][j].setActionCommand(action);
keys[i][j].addActionListener(this);
keys[i][j].setBackground(Color.white);
keys[i][j].setForeground(Color.red);
panel.add(keys[i][j]);
}
}//end of For loops
}
public final类Cal实现ActionListener、KeyListener{
Font Font=新字体(“SansSerif”,Font.BOLD,32);
JFrame=新JFrame();
JPanel面板=新JPanel(新网格布局(6,4,4,4));
JTextField=新的JTextField(“0.0”);
JButton[][]键=新JButton[6][5];
最终整数加1;
最终整数减=2;
最终整数倍=3;
最终整数除法=4;
最终积分sin=5;
最终int cos=6;
最终int ce=7;
最终int perc=8;
int op;
双ans=0;
双累积=0;
布尔值newNumb=true;
字符串calc=“”;
//赋值方法
公开无效分配(){
frame.setTitle(“科学计算器”);
frame.setDefaultCloseOperation(关闭时退出);
frame.setresizeable(false);
frame.setLayout(新的BorderLayout());
添加(面板、边框布局、中心);
field.setHorizontalAlignment(JTextField.RIGHT);
字段设置为可编辑(true);
设置前景(颜色为红色);
退根地(颜色:白色);
field.setToolTipText(“输入框”);
field.setFont(字体);
框架。添加(字段,边界布局。北);
frame.setVisible(true);
框架。设置尺寸(430430);
frame.addKeyListener(这个);
//field.addKeyListener(this);//使字段不可编辑
field.requestFocus();
面板.立根背景(颜色.黑色);
}
[在此处输入图像描述][1]//按钮方法
公共作废按钮(){
弦作用;
int i,j;
//创建关键点
按键=新的JButton[6][5];
键[0][0]=新的JButton(“7”);
键[0][1]=新的JButton(“8”);
键[0][2]=新的JButton(“9”);
键[0][3]=新的JButton(“+”);
键[1][0]=新的JButton(“4”);
键[1][1]=新的JButton(“5”);
键[1][2]=新的JButton(“6”);
键[1][3]=新的JButton(“-”);
键[2][0]=新的JButton(“1”);
键[2][1]=新的JButton(“2”);
键[2][2]=新的JButton(“3”);
键[2][3]=新的JButton(“x”);
键[3][0]=新的JButton(“0”);
键[3][1]=新的JButton(“.”);
键[3][2]=新的JButton(“=”);
键[3][3]=新的JButton(“/”);
键[4][0]=新的按钮(“x³”);
键[4][1]=新的按钮(“x²”);
键[4][2]=新的JButton(“%”);
键[4][3]=新的JButton(“√");
键[5][0]=新的JButton(“sin”);
键[5][1]=新的按钮(“tan”);
键[5][2]=新的JButton(“cos”);
键[5][3]=新的JButton(“CE”);
//i=行j=列
对于(i=0;i<6;i++){
对于(j=0;j<4;j++){
键[i][j].setFont(font);
action=(新整数(i)).toString()+(新整数(j)).toString();
键[i][j].setActionCommand(动作);
键[i][j].addActionListener(此);
键[i][j]。挫折背景(颜色。白色);
键[i][j]。设置前景(颜色。红色);
面板。添加(键[i][j]);
}
}//循环结束
}