javafx combobox下拉列表从屏幕边缘出来

Nic*_*olò 5 java combobox javafx

我有java(8_40)和javaFX的最新版本.

我有一个包含10个项目的复选框.我编译并运行该程序.如果我将程序窗口移动到监视器屏幕的底部,则下拉列表将从监视器屏幕中移出.无法单击屏幕上的项目.

相反,如果我尝试使用场景构建器2.0执行相同的布局,请单击预览,下拉列表会自动向上移动以不退出屏幕.

为什么要正确显示场景构建器,而不是"编译和运行"?

问题是相同的,如果我通过代码做图形是如果我使用文件fxml.

我在下面放了一个小程序示例,它给了我这个错误:

组件CustomControl.java

public class CustomControl extends VBox {

    public CustomControl() {
        ComboBox<String> asd = new ComboBox<String>();

        ObservableList<String> data = FXCollections.observableArrayList();       
        asd.setItems(data);

        data.add("1");
        data.add("2");
        data.add("3");
        data.add("4");
        data.add("5");
        data.add("6");
        data.add("7");
        data.add("8");
        data.add("9");
        data.add("10");

        getChildren().add(asd);
    }
}
Run Code Online (Sandbox Code Playgroud)

Main.java

public class CustomControlExample extends Application {
    public static void main(String[] args) {
        launch(args);
    }       
    String address = " ";

    @Override public void start(Stage stage) {
        stage.setTitle("ComboBoxSample");
        Scene scene = new Scene(new CustomControl());        

        stage.setScene(scene);
        stage.show();
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:

屏幕截图左侧弹出窗口跳出屏幕边框(eclipse),右侧弹出窗口自动移动(场景构建器)

在此输入图像描述

小智 0

看这个图片:

在此输入图像描述

解决起来很简单,只需更改可见行数即可。