Also versuche ich ein Single-Labyrinth (keine Generatoren) In Java, und ich habe eine Straßensperre getroffen. der aktuelle code, den ich habe, wird ein Labyrinth bilden und ein Jframe machen, aber es wird es nicht färben ... gibt es einen Weg, um die Färbung arbeiten zu lassen?Erstellen eines Labyrinths mit Matrizen (JAVA)
import java.awt.*;
import javax.swing.*;
import java.lang.*;
public class ayy{
public static void main(String [] args){
JFrame frame = new JFrame("Maze");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setSize(1000,1000);
frame.setVisible(true);
int width = 1;
int height = 1;
int [][] map= {
{0,0,0,0,0,0,0,0,0,0,},
{0,0,0,0,0,0,0,0,0,0,},
{2,1,1,1,0,0,0,0,0,0,},
{0,0,0,1,0,0,0,1,1,2,},
{0,0,0,1,0,0,0,1,0,0,},
{0,0,0,1,0,0,0,1,0,0,},
{0,0,0,1,1,1,1,1,0,0,},
{0,0,0,0,0,0,0,0,0,0,},
{0,0,0,0,0,0,0,0,0,0,},
{0,0,0,0,0,0,0,0,0,0,}
};
for(int i=0;i<map.length;i++){
for(int j=0;j<map.length;j++){
switch(map[i][j]){
case 0:
class rectangle{
public void paint(Graphics g){
g.drawRect(1,1,1,1);
g.setColor(Color.red);
}
}
break;
case 1:
class rectangle2{
public void paint(Graphics g){
g.drawRect(1,1,1,1);
g.setColor(Color.yellow);
}
} break;
case 2:
class rectangle3{
public void paint(Graphics g){
g.drawRect(1,1,1,1);
g.setColor(Color.blue);
}
} break;
}
}
}
}
}
Jede Hilfe wird tun Danke!
Haben Sie Ihre Rechtecke an den Rahmen hinzufügen? –
"Swing-Programme sollten' paintComponent() 'überschreiben, anstatt' paint() '' zu überschreiben. "- [* Malen in AWT und Swing: Die Malmethoden *] (http://www.oracle.com/technetwork/java/ painting-140037.html # Rückrufe). – trashgod
Betrachten Sie auch den hier untersuchten Ansatz (http://stackoverflow.com/q/11553461/230513). – trashgod