GUIを使用した電卓のボタンの表示について
Javaの課題で電卓を制作しています。
まず見た目だけ完成させるべくボタンを配置を配置しましたが、
実行してみると正しく表示されるときと、されないときがあります(画像参照)。
現時点でのコードを掲載いたしますので、是非アドバイスをいただけると幸いです。よろしくお願いします。
■以下コード
package add;
import java.awt.Button;
import java.awt.Frame;
import java.awt.TextField;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Calc extends Frame{
public static void main(String[] args){
Calc frame = new Calc();
}
public Calc(){
super("電卓");
setSize(317,360);
setVisible(true);
addWindowListener(new CalcWindow()); //下記のウィンドウを閉じる用
//ボタンとフィールドの追加
TextField result = new TextField("");
result.setBounds(20,50,270,50);
add(result);
result.setFocusable(false);
Button button1 = new Button("1");
button1.setBounds(20,120,70,30);
add(button1);
Button button2 = new Button("2");
button2.setBounds(100,120,70,30);
add(button2);
Button button3 = new Button("3");
button3.setBounds(180,120,70,30);
add(button3);
Button button4 = new Button("4");
button4.setBounds(20,165,70,30);
add(button4);
Button button5 = new Button("5");
button5.setBounds(100,165,70,30);
add(button5);
Button button6 = new Button("6");
button6.setBounds(180,165,70,30);
add(button6);
Button button7 = new Button("7");
button7.setBounds(20,210,70,30);
add(button7);
Button button8 = new Button("8");
button8.setBounds(100,210,70,30);
add(button8);
Button button9 = new Button("9");
button9.setBounds(180,210,70,30);
add(button9);
Button button0 = new Button("0");
button0.setBounds(100,255,70,30);
add(button0);
Button buttonC = new Button("C");
buttonC.setBounds(20,255,70,30);
add(buttonC);
Button buttonasta = new Button(".");
buttonasta.setBounds(180,255,70,30);
add(buttonasta);
Button buttonplus = new Button("+");
buttonplus.setBounds(260,120,30,30);
add(buttonplus);
Button buttonminus = new Button("-");
buttonminus.setBounds(260,165,30,30);
add(buttonminus);
Button buttonkakeru = new Button("×");
buttonkakeru.setBounds(260,210,30,30);
add(buttonkakeru);
Button buttonsla = new Button("/");
buttonsla.setBounds(260,255,30,30);
add(buttonsla);
Button buttonE = new Button("=");
buttonE.setBounds(20,300,270,30);
add(buttonE);
//ボタンとフィールドの追加ここまで
}
class CalcWindow extends WindowAdapter //ウィンドウを閉じる
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
}
※OKWAVEより補足:「Webシステム開発」についての質問です。
お礼
回答ありがとうございます! nfonfonfoさんの回答を参考にしたら、きちんと表示されるようになりました! ありがとうございました。