我有最新版本的 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);
}
}
主.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) 同时,右侧的弹出窗口会自动移动(场景构建器)
最佳答案
看这张图:
很容易解决,只需要更改可见行数即可。
关于javafx 组合框下拉菜单从屏幕边缘消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29127272/