将 JavaFX WebView 调整为文档正文所需的最小大小

2024-01-23

我正在为我的项目编写一个 JavaFX 自定义对话框。我需要一种变体但快速的模式来显示对话框内容。

我了解controlsFX;实际上我正在使用它,但我想在 WebView 中显示内容,这样它会更可控。

问题是关于 WebView 的大小我想找到文档正文的高度并将 WebView 的大小设置为该高度。

我尝试了以下 javascript hack,但在显示对话框之前,我得到的大小为 0,而在显示对话框之后,该值不可靠。有没有更好的解决方案,或者我应该忘记它并尝试嵌入支持 HTML 3 的 swing 组件?

    WebView vw = new WebView();
    vw.getEngine().loadContent("<p>This is my text</p><b>Another</b><p> This is a paragraph</p><ul><li>First cause</li><li>Second cause></li></ul>");
    vw.setPrefSize(500, 50);
    vw.setOnMouseClicked(new EventHandler<MouseEvent>() {

        @Override
        public void handle(MouseEvent event) {
            // I see that executeScript doesn't work correctly even when the WebView is loaded
            Integer h = (Integer) vw.getEngine().executeScript("document.body.offsetHeight");
            System.out.println("scriptRES: " + h );
            vw.setPrefSize(400, h);
            vw.setMinSize(400, h);
            vw.setMaxSize(400, h);
        }
    });

JavaFX 问题跟踪器中的功能请求涵盖了 WebView 的自动调整大小支持:

  • RT-25005 WebView 自动首选大小调整 https://javafx-jira.kenai.com/browse/RT-25005

该功能请求当前尚未实施或计划实施。您可以对功能请求进行投票或发表评论。

据我所知,没有解决方法。早期版本的 WebView 似乎可以使用以下代码engine.executeScript("document.width") and engine.executeScript("document.height")。但我上次尝试时这些命令不再起作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 JavaFX WebView 调整为文档正文所需的最小大小 的相关文章

  • 如何为俚语和表情符号构建正则表达式 (regex)

    我需要构建一个正则表达式来匹配俚语 即 lol lmao imo 等 和表情符号 即 P 等 我按照以下示例进行操作http www coderanch com t 497238 java java Regular Expression D
  • 从 127.0.0.1 到 2130706433,然后再返回

    使用标准 Java 库 从 IPV4 地址的点分字符串表示形式获取的最快方法是什么 127 0 0 1 到等效的整数表示 2130706433 相应地 反转所述操作的最快方法是什么 从整数开始2130706433到字符串表示形式 127 0
  • Chrome 扩展程序在代码中使用 client_secret

    我正在开发具有自己的 oAuth 授权的 Google Chrome 扩展 当然 我必须使用 client id 和 client secret 作为请求令牌 有什么办法可以向用户隐藏这些数据吗 由于此请求只是 javascript 源代码
  • 如何将 pfx 文件转换为 jks,然后通过使用 wsdl 生成的类来使用它来签署传出的肥皂请求

    我正在寻找一个代码示例 该示例演示如何使用 PFX 证书通过 SSL 访问安全 Web 服务 我有证书及其密码 我首先使用下面提到的命令创建一个 KeyStore 实例 keytool importkeystore destkeystore
  • 总是使用 Final?

    我读过 将某些东西做成最终的 然后在循环中使用它会带来更好的性能 但这对一切都有好处吗 我有很多地方没有循环 但我将 Final 添加到局部变量中 它会使速度变慢还是仍然很好 还有一些地方我有一个全局变量final 例如android Pa
  • 如何解决 Typescript 构建中的错误“找不到模块 'jquery'”

    我目前在 ts 文件的顶部有这个import require jquery 我这样做是因为我试图在我的打字稿文件中使用 jquery 但我似乎无法编译它 因为它返回标题中所述的错误 我正在使用 ASP NET CORE 脚本文件夹 tsco
  • 加密 JBoss 配置中的敏感信息

    JBoss 中的标准数据源配置要求数据库用户的用户名和密码位于 xxx ds xml 文件中 如果我将数据源定义为 c3p0 mbean 我会遇到同样的问题 是否有标准方法来加密用户和密码 保存密钥的好地方是什么 这当然也与 tomcat
  • 将 UMD Javascript 模块导入浏览器

    你好 我正在对 RxJS 进行一些研究 我可以通过在浏览器中引用它来使用该库 如下所示 它使用全局对象命名空间变量 Rx 导入 我可以制作可观察的东西并做所有有趣的事情 当我将 src 更改为指向最新的 UMD 文件时 一切都会崩溃 如下所
  • 日期出现奇怪的错误,“未捕获非法访问”

    所以我试图找到最新的DateJavascript 可以处理 我把它减少到 9 月 275760 并增加了我开始捕获未捕获的天数illegal access例外new Date 09 24 275760 to new Date 10 13 2
  • 如何从指定日期获取上周五的日期? [复制]

    这个问题在这里已经有答案了 如何找出上一个 上一个 星期五 或指定日期的任何其他日期的日期 public getDateOnDay Date date String dayName 我不会给出答案 先自己尝试一下 但是 也许这些提示可以帮助
  • Three.js 各种大小的粒子

    我是 Three js 的新手 正在尝试找出添加 1000 个粒子的最佳方法 每个粒子都有不同的大小和颜色 每个粒子的纹理是通过绘制画布创建的 通过使用粒子系统 所有粒子都具有相同的颜色和大小 为每个粒子创建一个粒子系统是非常低效的 有没有
  • 使用 Vue 的多模式组件

    我在 Vue 中实现动态模式组件时遇到问题 A common approach I follow to display a set of data fetched from the db is I dump each of the rows
  • 代码镜像错误:未捕获错误:扩展集中无法识别扩展值([对象对象])

    全部 我目前正在从事一个React Electron项目 该项目的目标是完成一个Markdown编辑器 当我配置codemirror 该程序报告错误说 Uncaught Error Unrecognized extension value
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • 用于交互式图形绘制的轻量级 JavaScript 库? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有兴趣了解用于绘制交互式图表的最轻量级 javascript 库 我掌握的数据主要是与海洋研究相关的科学数据 我知道一些 jquery
  • Javascript Replace() 和 $1 问题

    我正在尝试创建一个脚本来搜索文本中的模式并在它找到的字符串周围包裹一个标签 shop attributes td each function this html function i html return html replace E 0
  • 从 FileReader 设置背景图像样式

    我正在寻找一种解决方案 允许我从文件上传输入中获取文件并通过设置 document body style backgroundImage 来预览它 以下代码用于在 Image 元素中显示预览 function setImage id tar
  • 在 CKEditor 中设置字体大小和字体系列

    我正在使用 ckeditor 我想问一下这个插件如何设置font family和font size 我尝试过使用 CKEDITOR config font defaultLabel Arial CKEDITOR config fontSiz
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0
  • 如何在执行新操作时取消先前操作的执行?

    我有一个动作创建器 它会进行昂贵的计算 并在每次用户输入内容时调度一个动作 基本上是实时更新 但是 如果用户输入多个内容 我不希望之前昂贵的计算完全运行 理想情况下 我希望能够取消执行先前的计算并只执行当前的计算 没有内置功能可以取消Pro

随机推荐

  • 如何在WCF中设置cookie并在调用Ajax的成功函数(或其他地方)中读取它

    我有一些 jQuery JavaScript 调用一个简单的 WCF Web 服务 对我来说 在 JavaScript 中设置 cookie 并在服务器端读取它相当容易 这是该代码 客户端 JavaScript document cooki
  • 如何在 TypeScript 中从界面中排除某个键

    在 TypeScript 中 您可以像这样组合两种接口类型 interface Foo var1 string interface Bar var2 string type Combined Foo Bar 我不想组合键 而是想将键从一个接
  • Mercurial qfold 所有补丁?

    结果发现没有hg qfold a I tried hg qfold hg qunapp and hg qunapp xargs hg qfold但无法让它发挥作用 有任何想法吗 通过您的 xargs 方法 您是否还记得 qfold 只能折叠
  • 计算多维数组中的重复值

    我需要计算多维数组中的相同值并删除重复项 我的阵列 r a b a b c d c d c d e f 需要输出 0 gt Array 0 gt a 1 gt b 1 gt 2 Result 1 gt Array 0 gt c 1 gt d
  • 为什么允许访问另一个对象的私有字段?

    最近 我观察到在 Java 中访问 priavte 字段的意外行为 考虑以下示例 该示例说明了该行为 public class A private int i lt private field public A int i this i i
  • 如何创建指向同一文件的 Doxygen 链接

    我想编写一条 Doxygen 注释来命名出现注释的文件 我希望 Doxygen 为我提供文件名 而不是显式地编写文件名 因此 如果我更改文件的名称 或将某些内容移动到不同的文件中 我不需要更改名称的硬编码实例 举一个具体的例子 假设我要向
  • 网页模板,其中内容占据视口的整个高度(如果有 1 行减去页脚)

    我正在寻找一个基于 CSS 的网页模板 其中主要内容div当其内容只有几行时 占据视口的整个高度 减去页眉和页脚高度 页脚应该位于视口的底部 而不是内容的正下方 它更多地位于视口的中间 内容区域需要垂直扩展才能与页脚顶部连接 如果内容需要比
  • Python:看不到抛出的异常

    我正在运行单元测试 我意识到抛出了异常 然而 我只是不确定到底抛出了什么 from pt hil utilities PT HIL Interface Utils widgets import PathPicker import unitt
  • 检测Webview滚动是否到达末尾

    我想弄清楚最大滚动的立场是WebView可以达到 我已经尝试过了webView pageDown true 但结果被延迟了 我无法向下滚动 然后在用户面前向上滚动 并且此方法并非每次都有效 我也尝试过webView getContentHe
  • Python3,通过点击按钮从url下载文件

    我需要从这样的链接下载文件https freemidi org getter 13560 https freemidi org getter 13560 但我不能使用urllib request or requests库 因为它下载 htm
  • 无法使用 Xcode 10 在 Mojave 上安装brew

    我无法在我的 Mac 上安装任何 BREW 软件包 并出现以下错误信息 安装在我的 Mac 上 macOS 10 14 测试版 18A293u Xcode 9 3 9E145 Xcode 10 0 测试版 10L176w Type in b
  • 扩展WPF工具包RichTextBox垂直显示文本

    我正在尝试通过其 Text 属性将丰富内容 RTF 格式 绑定到富文本框 扩展 WPF Toolkit 如下所示
  • NodeJS 需要('..')?

    我一直在查看一些 NodeJS 示例 遇到以下情况 var module require var module require 我明白 require 的作用 但不明白这样写时它的作用是什么 有人可以向我解释一下吗 这是定义在https n
  • Javascript:如何获取函数内的父键?

    我有一些函数 存储在集合 数组中 并且希望获取密钥 函数名称 而不重新输入它 有没有什么捷径可以访问它 var functions collection function x function var name function x nam
  • IO Monad 在什么意义上是纯粹的?

    我已经将 IO monad 描述为 State monad 其中状态是 现实世界 这种 IO 方法的支持者认为 这使得 IO 操作变得纯粹 就像引用透明一样 这是为什么 从我的角度来看 IO monad 内部的代码似乎有很多可观察到的副作用
  • 更改嵌套转发器内下拉列表的选定值

    我尝试从 C 代码更改下拉列表选定的值
  • HTML 5中是不是不需要像HTML那样关闭标签呢?

    HTML 5中是不是不需要像HTML那样关闭标签呢 或者是 W3C 验证器中的错误 为什么此代码在 W3C 验证器中有效 p Some Text 如果它在 HTML5 中真的有效 我会感到惊讶 但是在 HTML5 中保持这种行为有效有什么好
  • 如何共享 Maven 原型?

    我创建了一个 Maven 原型 我想在我的公司内分享它 为此 我将其部署到我们的 Nexus 服务器上 并且可以从那里使用它 但这有点不方便 因为它似乎不在其他计算机上已知原型的目录中 解决方法是像这样使用它 mvn archetype g
  • 如何使用 firestore 运行地理“附近”查询?

    Firebase 中的新 Firestore 数据库本身支持基于位置的地理查询吗 即查找 10 英里内的帖子 或查找 50 个最近的帖子 我看到有一些现有的实时 firebase 数据库项目 例如 geofire 这些项目也可以适用于 fi
  • 将 JavaFX WebView 调整为文档正文所需的最小大小

    我正在为我的项目编写一个 JavaFX 自定义对话框 我需要一种变体但快速的模式来显示对话框内容 我了解controlsFX 实际上我正在使用它 但我想在 WebView 中显示内容 这样它会更可控 问题是关于 WebView 的大小我想找