Мое приложение с 3D-объектами javafx работало нормально, пока я не обновил java с 8u51 до 8u60. После обновления пользовательский интерфейс отображается вверх ногами. Вот что я получаю со следующим тестовым кодом. Кажется, что ось Y перевернута в рендеринге, но не в функциональности.
Я попытался поставить -Dprism.order=sw в качестве опции виртуальной машины. Это устраняет тестовую проблему, но не позволяет визуализировать 3D-объекты javafx.
Кто-нибудь знает, как исправить эту проблему с java/javafx. Я попробую скачать и установить Java 8u51.
Обратите внимание: я прочитал странный рендеринг JavaFX Mac OS .
import javafx.application.Application;
import javafx.scene.PerspectiveCamera;
import javafx.scene.SceneAntialiasing;
import javafx.scene.control.*;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
import javafx.scene.Scene;
public class TestAppj extends Application {
public static void main(String[] args) { Application.launch(args); }
public void start(Stage primaryStage) {
primaryStage.setTitle("Test Stage");
TabPane tabbedPane = new TabPane(new Tab("Tools", new BorderPane()), new Tab("Things", new BorderPane()));
MenuBar menuBar = new MenuBar(
new Menu("File", null, new MenuItem("Open"), new MenuItem("New"), new MenuItem("Save")),
new Menu("Edit", null, new MenuItem("Cut"), new MenuItem("Copy"), new MenuItem("Paste")));
BorderPane root = new BorderPane();
root.setTop(new VBox(menuBar, new ToolBar()));
root.setCenter(tabbedPane);
Scene theScene = new Scene(root, 500, 500, true, SceneAntialiasing.BALANCED);
theScene.setCamera(new PerspectiveCamera());
primaryStage.setScene(theScene);
primaryStage.show();
}
}