2016-05-14 6 views
1

私は何を疑問に思っていたnewを使用してJLabelオブジェクトを作成し、それを配列の対応する要素に配置します。 (グリッド[行] [列])を意味します。 Tic-Tac-Toeプログラムを作成しています。私はグリッドを初期化するためにforループを使用しています。それ以外の場合は、私があなたの宿題をするでしょう、あなたを助けにはなりません、私はあなたにいくつかのヒントを与えるだろう配列内の対応する要素

package tic.tac.toe; 

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
public class TicTacToe extends JFrame implements ActionListener, MouseListener 
{ 
Container content = this.getContentPane(); 
//Program Arrays 
JLabel [][] grid = new JLabel[' '][' ']; 
char [][ ]game = new char [' '][' ']; 
// Graphical User-interface Fields 
JButton restart = new JButton("Restart"); 
JPanel p = new JPanel(); 
JLabel status = new JLabel("Welcome to Tic-Tac-Toe"); 
//Primitive Fields 
int numClicks = 0 ; 
boolean isDone = false; 
boolean isXTurn = true; 

public TicTacToe() 
{//GUI 
    this.setVisible(true); 
    this.setTitle("Tic-Tac-Toe"); 
    this.setSize(900,500); 
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    //SetLayout 

    //Add Status Label 
    content.add(status); 
    status.setOpaque(true); 
    status.setBackground(Color.yellow); 
    status.setForeground(Color.blue); 
    status.setFont(new Font("Helvetica", Font.BOLD, 12)); 
    //Initailize the Main Panel 
    p.setLayout(new GridLayout(3,3)); 
    p.setBackground(Color.black); 
    content.add(p, BorderLayout.CENTER); 
    //Initialize the grid 
    for(int row = 0; row<=3;) 
    { 
     for (int col = 0; col<=3;) 
     { 
      JLabel lbl = new JLabel(); 
      grid[row][col] = lbl; 
      grid[row][col].addMouseListener(this); 
      grid[row][col].setOpaque(true); 
      grid[row][col].setBackground(Color.white); 
      grid[row][col].setFont(new Font("Helvetica", Font.BOLD, 39)); 
      p.add(grid[row][col]); 



     } 
    } 

} 





@Override 
public void actionPerformed(ActionEvent ae) 
{ 

} 

@Override 
public void mouseClicked(MouseEvent me) 
{ 

} 

@Override 
public void mousePressed(MouseEvent me) 
{ 

} 

@Override 
public void mouseReleased(MouseEvent me) 
{ 

} 

@Override 
public void mouseEntered(MouseEvent me) 
{ 

} 

@Override 
public void mouseExited(MouseEvent me) 
{ 

} 


public static void main(String[] args) { 
    TicTacToe tTT = new TicTacToe(); 
} 

}

+0

あなたには何の質問がありますか、それは私には分かりません –

+0

これは明らかに宿題の助けとなり、ゼロの努力をしました。 –

+0

@ChristopherSchneiderあまりにも長いが、ここに実際にあるので、コード全体を入れたくない – dude546546575

答えて

2

: はここに、forループのために私が持っているものだ

  1. 配列はでJavaはこのように定義されています:Type[] varName = new Type[NumberOfOccurences];またはそれ以上の寸法Type[][] varName = new Type[NumberOfOccurencesForDimension1][NumberOfOccurencesForDimension2];。一次元の配列にテーブルを置く
  2. myArray[rowIndex * colIndex + colIndex] = objectToPutIn;
  3. は、二次元の配列にテーブルを置くことにより、そのインデックスを計算する必要があることは自明である:JavaでmyArray[rowIndex][colIndex] = objectToPutIn;
  4. 配列インデックスはの0だからアレイから始まり1つの要素がインデックス0にあります。
+0

ありがとうございました......これは助けてください=) – dude546546575

+0

ああ、ちょうど私の元のコードは、私の細胞のうちの1つが他のものよりも大きいです。 – dude546546575

+0

あなたのことを聞いてうれしいですそれを達成するための良い道に –

関連する問題