当前位置: 首页 > 知识库问答 >
问题:

JavaFX浏览器-在ListView中显示条目的getTitle()

艾望
2023-03-14

我需要添加一个显示历史功能到我的JavaFX web浏览器。我有:作为ObservableList获取历史记录的方法:

public static ObservableList<Entry> getHistoryList() {
    WebHistory history = MyJavaFXBrowser.getWebEngine().getHistory();
    ObservableList<Entry> entries = history.getEntries();
    return entries; 
}

并转换为ListView

public static ListView<Entry> getHistoryPane() {
    return new ListView<Entry>(getHistoryList());
}

如果我将方法更改为:

public static ObservableList<String> getHistoryListTitles(){
        WebHistory history = MyJavaFXBrowser.getWebEngine().getHistory();
        ObservableList<Entry> entries = history.getEntries();
        ObservableList<String> titles = FXCollections.observableArrayList();;
        for (Entry entry: entries) {
            titles.add(entry.getTitle());
        }

        return titles;
    }

当我自动更改页面时,它不会更新历史记录。

如何在ListView中访问ObservableList的方法?

共有1个答案

燕智
2023-03-14

使用单元格工厂:

public static ListView<Entry> getHistoryPane() {
    ListView<Entry> historyPane = new ListView<Entry>(getHistoryList());

    historyPane.setCellFactory(lv -> new ListCell<Entry>() {
        @Override
        protected void updateItem(Entry entry, boolean empty) {
            super.updateItem(entry, empty);
            setText(entry == null ? null : entry.getTitle());
        }
    });

    return historyPane ;
}
 类似资料:
  • 问题内容: 如何在Web浏览器中的.html页面上显示pdf? 问题答案: 我使用的是Google文档可嵌入的PDF查看器。这些文档不必上传到Google文档,但必须在线提供。

  • 我有一个java类,当我们运行时,会执行一个批处理文件。我有一个变量(布尔值),它将显示true或false,指示批处理文件是否正确执行其命令。现在,true或false输出只显示在控制台中。我希望在键入URL时,它会显示在web浏览器上(例如,) 到目前为止,我有以下代码: 运行批处理文件。JAVA BatchFile.java 这个批处理文件。Java类给了我以下错误: JAVA异常:测试类在

  • 我正面临一个奇怪的问题。我已经把所有东西都放在php.ini文件里了。但是我不能在浏览器中显示任何错误。我google设置了. ini文件,并做了所有需要的事情。但是我仍然不能在浏览器中显示错误信息。我的PHP ini设置, 我尝试使用以下代码查看错误消息, 实际上文件示例不可用。所以它必须显示致命错误。但它显示的是空白页。 你能告诉我怎么解决这个问题吗?我不知道我错过了什么。

  • 问题内容: 我想始终在网页中显示垂直滚动条。是否可以使用javascript?我认为可以使用javascript或jQuery。我要垂直滚动条是否有足够的内容来显示或不显示。 谢谢。 问题答案: 不需要jQuery。您可以尝试添加CSS: 这适用于最新的浏览器,甚至IE6。

  • 我有一个从数据库中检索图像路径的程序。程序正在eclipse浏览器中成功检索图像,但未在任何web浏览器中检索。我有3页,第一页。登录名。jsp 2。指数jsp 3。LoginServlet。Java语言

  • 问题内容: 这个问题已经在这里有了答案 : 8年前关闭。 可能重复: 如何使用servlet在jsp中显示pdf文件 我从数据库中检索pdf文件,并将其放入这样的文件中 现在这是在服务器端。在我的客户端中,每当用户单击jsp页面中的说 href = pdf(pdf是我的servlet名称) 的链接时 ,我都应该在客户端的浏览器上显示从数据库检索到的文件。 我该怎么办? 问题答案: 将响应的内容类型