将.java文件中实例化的TilePane添加到FXML

时间:2013-10-22 16:26:03

标签: javafx-2 fxml

我正在尝试将带有ImageView子项的TilePane添加到JavaFX中的场景中。目前,我的FXML正在加载一个空的TilePane。

我制作TilePane的当前FXML线是

<TilePane id="MapPane" fx:id="mapPane" layoutX="3.0" layoutY="0.0" prefColumns="9" prefHeight="560.0" prefTileHeight="112.0" prefTileWidth="112.0" prefWidth="1277.0" visible="true"\>

其中mapPane是我的.java文件中变量的名称

控制器:     / *  *要更改此模板,请选择“工具”|模板  *并在编辑器中打开模板。  * / package screens.gameScreen;

import screens.*;
import mule.*;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.layout.*;
import java.awt.MouseInfo;
import java.awt.Point;
import com.sun.glass.ui.Robot;

/**
* FXML Controller class
*
* @author Stephen
*/
public class GameScreenController implements Initializable, ControlledScreen {

Robot robot = com.sun.glass.ui.Application.GetApplication().createRobot();
ScreenManager screenManager;
TileEngine tileEngine = new TileEngine();
@FXML
TilePane mapPane = tileEngine.createRandomMap(true);;

/**
 * Initializes the controller class.
 */
@Override
public void initialize(URL url, ResourceBundle rb) {
}    

@Override
public void setScreenParent(ScreenManager screen) {
    screenManager = screen;
}

@FXML
private void goToMain(ActionEvent event) {
    screenManager.setScreen(mule.MULE.mainMenuScreenID);
}
}

1 个答案:

答案 0 :(得分:0)

您可以使用SceneBuilder创建FXML。这可以轻松解决您的问题。