eclipseを使用してプログラムを実行すると、ボタンが1つだけ表示されます(左上隅)が、ターミナルでjavacを使用すると(ほとんどの場合)、すべてのボタンが表示されます。それは本当に私を悩ませています。誰か助けてもらえますか?ありがとう!
これは私のコンストラクターです:
public TicTacToe(){
super("Farm Tic-Tac-Toe");
setSize(450,750);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container cont = getContentPane();
cont.setLayout(null);
int newLine = 0;
int lineCount = 0;
for(int i = 0; i < buttons.length; i++){
buttons[ i] = new JButton(blank);
if(i == 3 || i == 6){
newLine++;
lineCount = 0;
}
buttons[ i].setBounds(lineCount*150,newLine*150,150,150);
cont.add(buttons[ i]);
buttons[ i].addActionListener(this);
lineCount++;
}
}
これがアクションリスナーです...
public void actionPerformed(ActionEvent e){
for(int i = 0; i < buttons.length; i++){
if(e.getSource()==buttons[ i]){
if(turn%2==0){
buttons[ i].setName("x");
buttons[ i].setIcon(x);
buttons[ i].removeActionListener(this);
}
else{
buttons[ i].setName("o");
buttons[ i].setIcon(o);
}
buttons[ i].removeActionListener(this);
}
}
turn++;
checkWin();
}
私は(初心者ではありませんが)Javaがあまり得意ではないので、コード設計がいかに悪いかについてあまり教えてはいけません。