5

我一直在使用这段代码从 JavaFX8 尝试 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);           
    }
}
4

1 回答 1

1

您的代码很简单,因此很可能是测试版中的错误。

于 2013-08-10T01:31:47.683 回答