2015-10-14 31 views
2

一個JavaFX的階段,它原本可調整大小無法顯示一個模態對話框後,再調整後調整。這隻發生在Linux:Ubuntu和XUbuntu。它在Windows中正常工作。JavaFX的階段不能顯示一個對話框

下面的代碼顯示一個按鈕的窗口。最初的窗口可以調整大小而沒有問題。點擊按鈕後會顯示警報對話框,此後窗口不能再調整大小。有什麼我在這裏失蹤?這是一個Ubuntu錯誤?

import javafx.application.Application; 
import javafx.scene.Scene; 
import javafx.scene.control.Alert; 
import javafx.scene.control.Button; 
import javafx.scene.control.ButtonType; 
import javafx.scene.control.Alert.AlertType; 
import javafx.scene.layout.StackPane; 
import javafx.stage.Stage; 

public class StageTest extends Application { 

    @Override 
    public void start(Stage primaryStage) throws Exception { 
     primaryStage.setTitle("Hello World!"); 
     Button btn = new Button(); 
     btn.setText("Show Alert"); 
     btn.setOnAction(e -> { 
      Alert alert = new Alert(AlertType.WARNING, "This is an alert", ButtonType.YES); 
      alert.showAndWait(); 
     }); 
     StackPane root = new StackPane(); 
     root.getChildren().add(btn); 
     primaryStage.setScene(new Scene(root, 1000, 850)); 
     primaryStage.show(); 
    } 

    public static void main(String[] args) { 
     launch(args); 
    } 
} 
+0

您使用的是哪個JDK版本? – ItachiUchiha

+0

我使用JDK 1.8.0_60-b27 –

+0

我可以確認此問題無法在MacOSX 10.10.5 + JDK 1.8.0_60上重現。 – ItachiUchiha

回答

0

這是在虛擬機上的Linux上運行時發生的JavaFX錯誤。在使用oracle jdk 1.8.0_152在VMWare上運行時,我在CentOS 7上遇到同樣的問題。

該bug票這個問題位於:https://bugs.openjdk.java.net/browse/JDK-8140491

票只提到Ubuntu的虛擬箱,但我經歷過同樣的問題,與在VMware的CentOS。

不幸的是,JDK錯誤,系統向公衆開放,所以我不能投票或看問題。目前,他們已經開始在這條路上踢球,並且沒有計劃在Java 11之前解決這個問題!也許如果有足夠多的人抱怨他們會盡早解決這個問題。