gpt4 book ai didi

javafx - 通过 java 在 JavaFX Web View 中设置文件输入的值

转载 作者:行者123 更新时间:2023-12-02 05:58:09 25 4
gpt4 key购买 nike

我有一个WebView我的 JavaFX 中的节点和加载到其中的页面有一个 <input type=file> 。我想将此输入的值设置为磁盘上的文件。我知道通过将 JavaScript 注入(inject)到 Web View 中这是不可能的。但我想知道是否可以访问 JavaFX 内部结构,了解如何处理这些输入字段并通过那里设置值。文档中似乎没有提及文件输入控件的处理,因此我对此感到困惑。

当我点击文件输入时。 JavaFX 为我提供了一个 native 文件选择器。因此,我期望在单击文件输入时会调用某种形式的处理程序,要求用户选择一个文件,然后用该值填充文件输入。这就是我想做的。

我尝试只获取元素并设置它的值,但是当然,它不起作用。

webEngine.getDocument().getElementById("FileInput")
.setNodeValue("C:\\attachment.pdf");

这段代码什么也没做。没有错误,也没有结果。

那么,有什么想法吗?

最佳答案

JavaFX 内部使用WebKit对于WebView节点,因此具有相同的安全限制。无法设置 <input type="file"/> 的值以编程方式,既不通过 JavaScript 也不通过 Java。

我建议您使用FileChooser不使用WebView节点。什么是WebView节点显示的是一个选择按钮,它调用 FileChooser ,以及带有所选文件名的标签。这可以使用 JavaFX 在 Java 源代码中轻松实现。

关于javafx - 通过 java 在 JavaFX Web View 中设置文件输入的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40811864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com