javafx 组合框下拉菜单从屏幕边缘出来

Posted

技术标签:

【中文标题】javafx 组合框下拉菜单从屏幕边缘出来【英文标题】:javafx combobox dropdown go out from the edges of the screen 【发布时间】:2015-05-21 13:04:55 【问题描述】:

我有最新版本的 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) 同时,右侧的弹出窗口会自动移动(场景生成器)

【问题讨论】:

下拉菜单弹出屏幕监视器。无法点击不可见列表 有趣,我试过了,得到了和 Nicolò 一样的行为。测试系统是 OS X 10.9 + Java 8u40 或 SceneBuilder 2.0-b20,在嵌入式 Java 1.8.0-b132 上运行。我相信这是功能的回归。我建议filing a bug report。 似乎是Java 8 update 40 版本中的一个错误。我可以在 Ubuntu 14.04 + Java 8u40 中重现该问题。有趣的部分是我在 Java 8u25 上进行了尝试,并且运行良好。当底部没有足够空间时,弹出窗口会显示在组合框的顶部。 问题截图s2.postimg.org/yo1e6iwc9/aaaaaa.jpg @Nicolò 我已经提交了bug report。您可以对其进行投票并密切关注它的更改和修复。 :) 【参考方案1】:

看这张图片:

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

【讨论】:

虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。 我发布链接是因为网站问我必须有 10 个声望 "很容易解决,只需要改变可见行数。".这不是现实世界的解决方案。

以上是关于javafx 组合框下拉菜单从屏幕边缘出来的主要内容,如果未能解决你的问题,请参考以下文章

带有复选框的 JavaFX 组合框

如何在下拉菜单中加载组合框项目

Tailwindcss 下拉项目飞到屏幕边缘而不是下拉按钮下方

下拉菜单(选择标签、组合框)在 GeckoView 实现中不起作用

WINAPI - 设置组合框下拉菜单的背景和文本颜色

如何在不选择下拉菜单的情况下折叠/关闭组合框?