Hallo
Ich bin letztens von Windows auf Mac umgestiegen und habe deswegen von Pascal zu Java wechseln müssen.
Um jetzt etwas in das GUI Programmieren reinzukommen, wollte ich mir ein kleines MineSweeper bauen.
Also eigentlich nichts spektakuläres. (Die Größen sind noch nicht perfekt, aber egal). Wenn ich das jetzt laufen lasse, bauen sich fast alle Buttons passend auf. Nur der letzte Button hat die Größe des Frames und überdeckt die anderen, sobald ich auf ihn klicke.
Kann mir da jemand weiterhelfen?
Nikolas
Ich bin letztens von Windows auf Mac umgestiegen und habe deswegen von Pascal zu Java wechseln müssen.
Um jetzt etwas in das GUI Programmieren reinzukommen, wollte ich mir ein kleines MineSweeper bauen.
Code:
import javax.swing.*;
import java.util.Random;
import java.awt.event.*;
public class MineSweeper {
public static void main( String[] args )
{
int x=5; // Anzahl Kästchen
int y=3;
int mineCount = 50; // Bomben im Feld
double mineProb = x*y / mineCount; // zu Testen
boolean[][] Bomb = new boolean[ x ][ y ];
int[][] Zahlen = new int[ x ][ y ];
JFrame f = new JFrame( "MineSweeper");
f.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
int frameWidth = 500;
int frameHeight = 500;
int xOffset = 15;
int yOffset = 15;
f.setSize(frameWidth , frameHeight );
f.setVisible( true );
// Die MinenButtons
JButton[][] Buttons = new JButton[x][y];
int bWidth = (frameWidth - 2*xOffset) / x;
int bHeight = (frameHeight - 2*yOffset) / y;
// Setzen der Buttons:
for (int i=0; i<x; i++) {
for (int j=0;j<y; j++) {
Buttons[i][j] = new JButton();
f.add(Buttons[i][j]);
Buttons[i][j].setSize(bWidth,bHeight);
Buttons[i][j].setLocation(xOffset + i*bWidth,yOffset + j* bHeight);
Buttons[i][j].setText("x="+i+"y="+j);
}
}
}
}
Also eigentlich nichts spektakuläres. (Die Größen sind noch nicht perfekt, aber egal). Wenn ich das jetzt laufen lasse, bauen sich fast alle Buttons passend auf. Nur der letzte Button hat die Größe des Frames und überdeckt die anderen, sobald ich auf ihn klicke.
Kann mir da jemand weiterhelfen?
Nikolas