Cześć zrobiłem coś takiego tylko wywala błąd i nic nie tworzy :/ Chce stworzyć 10x10 buttonów.
package saper;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
/**
*
* @author Tomek
*/
public class GameWindow extends JFrame implements ActionListener{
private JButton StartGameButton;
private JButton Results;
private JMenuBar Menu;
private JMenu menuFile,menuHelp;
private JMenuItem iNewGame, iInformations, iShowResult, iClose;
private JButton[][] buttonsField;
private JPanel GamePanel;
private Container grid = new Container();
public GameWindow() {
setTitle("Saper");
setBounds(300,300,500,500);
setLayout(null);
setResizable(false);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
grid.setLayout(new GridLayout(10,10));
Menu = new JMenuBar();
menuFile = new JMenu("Plik");
iNewGame = new JMenuItem("Nowa gra");
iShowResult = new JMenuItem("Wyniki");
iClose = new JMenuItem("Koniec");
menuFile.add(iNewGame);
menuFile.add(iShowResult);
menuFile.add(iClose);
menuHelp = new JMenu("Pomoc");
iInformations = new JMenuItem("O Programie");
menuHelp.add(iInformations);
setJMenuBar(Menu);
Menu.add(menuFile);
Menu.add(menuHelp);
StartGameButton = new Fields("Nowa Gra",200,150,100,50);
Results = new Fields("Wyniki",200,220,100,50);
add(Menu);
add(StartGameButton);
StartGameButton.addActionListener(this);
add(Results);
}
public void GameWindowBulid() {
for (int k = 0;k< buttonsField.length;k++){
for(int w = 0;w< buttonsField.length;w++){
buttonsField[k][w] = new JButton();
buttonsField[k][w].addActionListener(this);
grid.add(buttonsField[k][w]);
}
}
}
@Override
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if (source == StartGameButton) {
GameWindowBulid();
Results.setVisible(false);
}
}
}