我试图让我的文本字段正确对齐,但我不太确定如何使它们在JTextField中正确对齐。我读到你可以使Jtextfield正确化,但我无法找到正确的语法。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.TitledBorder;
public class RecursivePowerCalculator extends JFrame {
//text fields for base, exponent, and power.
private JTextField jtfBase = new JTextField();
private JTextField jtfExponent = new JTextField();
private JTextField jtfPower = new JTextField();
//button to press called calcuate
private JButton jbtCalculate = new JButton("Calculate");
//constructor
public RecursivePowerCalculator(){
jtfPower.setEditable(false);
JPanel p1 = new JPanel(new GridLayout(3,2));
p1.add(new JLabel("Base"));
p1.add(jtfBase);
p1.add(new JLabel("Exponent"));
p1.add(jtfExponent);
p1.add(new JLabel("Power"));
p1.add(jtfPower);
JPanel p2 =new JPanel(new FlowLayout(FlowLayout.CENTER));
p2.add(jbtCalculate);
//add the panels to the frame
add(p1, BorderLayout.CENTER);
add(p2, BorderLayout.SOUTH);
jbtCalculate.addActionListener(new ButtonListener());
}
private class ButtonListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e){
//get values from text fields
double base = Double.parseDouble(jtfBase.getText());
double exponent = Double.parseDouble(jtfExponent.getText());
String pNum = "" + (power(base, exponent));
jtfPower.setText(pNum);
}
private double power(double x, double y){
if ( y == 0)
return 1.0;
else
return power(x,y - 1) * x;
}
}
}