2015-05-24 7 views
1

Эй, я пытаюсь сделать простой 2d скроллер, но я просто не могу получить изображение для прокрутки. Я использую ImagveView для изображения, и я пробовал переадресацию и переход по пути, но я не могу получить никаких хороших результатов? Вот мой код:JavaFX 8 2d Scroller

public void aboutSceneAnimation() { 

    Rectangle2D psb = Screen.getPrimary().getVisualBounds(); 

    Path path = new Path(); 
    MoveTo moveTo = new MoveTo(); 
    moveTo.setX(0.0); 
    path.getElements().add(moveTo); 
    PathTransition pt = new PathTransition(); 
    pt.setDuration(Duration.INDEFINITE); 
    pt.setNode(map); 
    pt.setPath(path); 
    pt.setCycleCount(4); 
    pt.setAutoReverse(true); 

    pt.play(); 
} 

public Scene aboutScene() { 
    Rectangle2D psb = Screen.getPrimary().getVisualBounds(); 

    //Create the map 

    BorderPane border = new BorderPane(); 
    border.getChildren().addAll(map2); 

    //Size the map 

    map2.setFitWidth(psb.getWidth()); 
    map2.setFitHeight(psb.getHeight()); 

    Scene scene = new Scene(border, 500, 500); 
    aboutSceneAnimation(); 
    return scene; 

} 

Как это работает в том, что при запуске программы происходит запуск сцены загружен в мою сцену, а потом я просто показать сцену. Когда нажимается кнопка, я просто переключаюсь на aboutScene, который также вызывает aboutSceneAnimation, где я хочу, чтобы карта прокручивалась. Благодарим за любую идею!

-Cheers

ответ

0

Вы должны использовать Панель вместо BorderPane, потому что в BorderPane центр узла будет изменен, чтобы заполнить свободное пространство в середине.

В вашем PathTransition вы только добавляете, с чего начать, i. е. MoveTo, но вы не добавляете, куда он должен идти, e. г. a LineTo.


Дополнительное примечание:

Поскольку ваш пример в вопросе содержит только биты и куски, которые не работают вместе, пожалуйста, прочитайте о How to create a Minimal, Complete, and Verifiable example.