4
我一直在嘗試從JavaFX8 SwingNode使用此代碼。問題是當窗口出現時,我無法點擊按鈕,直到我調整了窗口大小。移動它不起作用。我需要最大化它,或者用鼠標調整它的大小以使按鈕響應。javafx SwingNode不能工作,直到窗口調整大小
我意識到這可能是因爲javafx8仍處於測試階段的錯誤,但如果那不是的情況下是有什麼我需要做的,做了與第一次調整窗口這項工作?
public class SwingNodeTest extends Application {
private SwingNode swingNode;
@Override
public void start(Stage stage) {
swingNode = new SwingNode();
createAndSetSwingContent();
StackPane pane = new StackPane();
pane.getChildren().add(swingNode);
stage.setScene(new Scene(pane, 100, 50));
stage.show();
}
private void createAndSetSwingContent() {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
swingNode.setContent(new JButton("Click me!"));
}
});
}
public static void main(String[] args) {
Application.launch(args);
}
}
此代碼工作正常關於Java 8構建101(可以點擊立即的JButton首先所示的窗口中)與2012的Macbook Air在OS X 10.8.4上運行。 – jewelsea
我在使用Java 8構建129同樣的問題然而,內部的invokeLater我的代碼比按鈕更復雜,仍然是調整我的窗口後,不能正常工作。 (另外,在另一個問題中,我被告知應該使用Platform.runLater而不是SwingUtilities.invokeLater ...後者不能用於JavaFX)(我正在使用JavaFX/Java 8) – adeena