Ich bin ziemlich neu in Java, aber ich versuche, eine Karte eines Raumes mit einem Array erstellen, aber ich weiß nicht, wie ich es zu meiner App-Klasse hinzufügen. Da der Code zu lang ist, teile ich die Ansichtsklasse, mit der ich versucht habe zu arbeiten, um sie meiner Anwendung hinzuzufügen. Ich entfernte den Code, der die anderen Bestandteile meiner Anwendung wegen der Länge hinzufügt, aber das beigefügte Bild ist die Ausgabe, die ich erhalte.Array der Karte zu Java-Anwendung hinzufügen
Jede Hilfe wäre sehr dankbar. Ich habe jede Option ausgeschöpft. Vielen Dank.
import javafx.geometry.HPos;
import javafx.geometry.Insets;
import javafx.geometry.VPos;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.RadioButton;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
public class FloorBuilderView extends GridPane {
private FloorPlan model;
//component on window
private Button buildingOverview;
private Button roomTilesColor;
private FloorPlan fp;
private Button[][] buttons;
private RadioButton exit;
private RadioButton walls;
private RadioButton roomTiles;
private RadioButton selectRoom;
private TextField floorSummary;
private Label selectEdit;
private Label floorLayoutLabel;
private Label floorSummaryLabel;
public FloorBuilderView(){
// model = fp; // Store the model so that the update() method can access it
fp = FloorPlan.floor1();
fp = new FloorPlan(20, "Main Floor");
int[][] tiles = {
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,1,1,1,1,0,1,1,1,1,1},
{1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}};
for (int r=0; r<20; r++)
for (int c=0; c<20; c++)
fp.setWallAt(r,c,tiles[r][c]==1);
setPadding(new Insets(10,10,10,10));
//floorPlan = new Panel(new GridLayout(fp.size(), fp.size(), 0, 0));
//buttons = new Button[fp.size()][fp.size()];
update();
}
public void update() {
}
}
Wo zeigen Sie es an? – user7185318
@ user7185318 was meinst du? – comp1005
Wo zeigen Sie Ihre Kacheln/GridLayout an? Wie auch immer, ich würde vorschlagen, ein JPanel zu verwenden und darauf zu zeichnen, weil ich denke, dass es viel einfacher wäre ... – user7185318