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

时间:2015-03-18 16:19:46

标签: 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);
    }
}

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();
    }
}

编辑

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

enter image description here

1 个答案:

答案 0 :(得分:0)

看到这张图片:

enter image description here

很容易解决,只需更改可见的行数。