2014-05-21 3 views
0

У меня есть файл FXML, который выполняет некоторые определенные анимации с некоторыми прямо сейчас статическими (так сказать) формами, жестко закодированными в fxml. То, что я пытаюсь сделать, - это динамически создавать фигуры из объектов Java, которые имеют определенные свойства, такие как цвет, который эти объекты будут извлекать из базы данных, и заполнить fxml этими объектно-ориентированными формами, я не уверен, как это сделать. Ниже приведен код для основного класса, я знаю, почему происходит ошибка, но не уверен, как это сделать другим способом.SceneBuilder 2.0 Генерация динамической формы

public class TestConveyorView extends GuiceApplication { 

    @Inject 
    private GuiceFXMLLoader fxmlLoader; 

    public Injector createInjector() { 
     return Guice.createInjector(new AbstractModule() { 
      @Override 
      protected void configure() { 
      } 
     }); 
    } 

public static void main(String[] args) { 
    Application.launch(args); 
} 

@Override 
public void init(List<Module> modules) throws Exception { 
} 

    @Override 
    public void start(Stage stage) throws Exception { 
     //GridPane root = new GridPane(); 
    Parent root = fxmlLoader.load(getClass().getClassLoader().getResource("fxml/TestConveyorView.fxml")).getRoot(); 

    Box box = new Box(1, red); 
    Rectangle rectangle = new Rectangle(50,50,box.getColor()); 
    // Can't seem to add it to the scene, problem occurs here. 
    root.getChildren().add(rectangle); 


    Scene scene = new Scene(root); 

    // BackgroundImage background = new BackgroundImage(null, BackgroundRepeat.REPEAT, BackgroundRepeat.REPEAT, BackgroundPosition.DEFAULT, BackgroundSize.DEFAULT); 
    stage.setScene(scene); 
    stage.show(); 
    } 



} 
+1

У вас есть код, который вы написали, где мы можем вам помочь? – Perneel

ответ

0

Ok я исправил проблему путем изменения

Parent root = ... 

Для

AnchorPane root = ... 

Простой исправить, что я проглядел я думаю.

Смежные вопросы