나는 계산기 애플릿에 필요한 모든 버튼을 질서있게 보여주기 위해 JApplet을 얻으려고했지만, 그걸로 보이지 않는다. 모두 같은 크기 여야하며 서로의 아래에 바로 표시하십시오. 다른 레이아웃을 사용하거나 전체 디자인을 변경해야합니까? 미리 감사드립니다.Calculator를 얻을 수 없다. JApplet GUI가 규칙적으로 버튼을 표시한다.
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class MyCalc extends JApplet implements ActionListener{
/**
*
*/
protected static final long serialVersionUID = 3169756252830354073L;
private JMenuBar menuBar = new JMenuBar();
private JMenu edit = new JMenu("Edit");
private JMenu view = new JMenu("View");
private JMenu help = new JMenu("Help");
//Instantiated all JPanels used in this Applet
private JPanel[] rows = {new JPanel(), new JPanel(), new JPanel(),
new JPanel(), new JPanel(), new JPanel(), new JPanel()};
JTextField calc = new JTextField(1);
private JButton[] buttons = {new JButton("Backspace"), new JButton("CE"), new JButton("C"),
new JButton("MC"), new JButton("7"), new JButton("8"), new JButton("9"),
new JButton("/"), new JButton("sqrt"), new JButton("MR"), new JButton("4"),
new JButton("5"), new JButton("6"), new JButton("*"), new JButton("%"),
new JButton("MS"), new JButton("1"), new JButton("2"), new JButton("3"),
new JButton("-"), new JButton("1/x"), new JButton("M+"), new JButton("0"),
new JButton("+/-"), new JButton("."), new JButton("+"), new JButton("=")};
public void actionPerformed(ActionEvent e) {
if(e.getSource() == buttons[0])
{
}
}
public void init()
{
setName("Calculator Applet");
menuBar.add(edit);
menuBar.add(view);
menuBar.add(help);
setJMenuBar(menuBar);
rows[0].setLayout(new BoxLayout(rows[0], BoxLayout.Y_AXIS));
getContentPane();
add(rows[0]);
setSize(300, 200);
calc.setText("0.");
calc.setHorizontalAlignment(JTextField.RIGHT);
for(int i = 0; i < 3; i++)
{
rows[2].add(buttons[i]);
}
for(int i = 3; i < 9; i++)
{
rows[3].add(buttons[i]);
}
for(int i = 9; i < 15; i++)
{
rows[4].add(buttons[i]);
}
for(int i = 15; i < 21; i++)
{
rows[5].add(buttons[i]);
}
for(int i = 21; i < 26; i++)
{
rows[6].add(buttons[i]);
}
rows[1].add(calc);
rows[1].setLayout(new GridLayout());
rows[2].setLayout(new GridLayout());
rows[0].add(rows[1]);
rows[0].add(rows[2]);
for(int i = 3; i < 7; i++)
{
rows[0].add(rows[i]);
rows[i].setLayout(new FlowLayout(FlowLayout.CENTER));
}
}
정확히 당신이처럼 무엇을 기대 프레임의 크기를 조정하면 모든 것이 망쳐됩니까? –
처음 3 개의 버튼이 다른 모든 버튼보다 위에 있고, 6 개의 버튼이 각각 행으로 표시되고 모든 단추가 바로 아래에있는 것처럼 서로 마주 보게하고 싶습니다. 관심을 가져 주셔서 감사합니다 – user3046986