代码之家  ›  专栏  ›  技术社区  ›  Markus Lausberg

Lobo Cobra HtmlPanel在JavaScript操作后不更新GUI

  •  1
  • Markus Lausberg  · 技术社区  · 17 年前

    你好,

    我开始在Swing中实现HTML浏览器。我想用 Lobo Cobra 工具包,因为该工具包包含CSS和JavaScript的呈现器和解析器。这些页面看起来非常漂亮,而且很容易使用(一个类实现显示一个html页面)。

    我想在swing中显示HTML页面,它可以显示javascript生成和修改的对象,就像一个闪烁的圆圈。 据我所知,cobra工具包可以显示静态javascript命令,如“document.write”或closwWindow()实现,但不能从javascript更新GUI。

    有人以前用过Lobo Cobra Toolkit吗?给了我一些示例代码或提示,用于显示内部有动画JavaScript对象的HTML页面。

    1 回复  |  直到 17 年前
        1
  •  1
  •   paxdiablo    17 年前

    我的印象是,只要你设置了通知,你的代码就会被调用来对DOM进行所有更改,无论是在页面加载时完成的,还是在页面加载后由Javascript动态完成的。

    我最初会设置一个实现DocumentNotificationListener接口的对象(X),并为每个调用的方法记录一条消息。然后使用Y.addDocumentNotificationListener(X)将其设置为监听器[其中Y是您的HTMLDocumentImpl对象],并加载您的页面以查看实际调用了哪些方法。

    最坏的情况是,每次方法调用时都必须重新呈现HTML页面,但您应该能够优化其中的大部分。例如,更改节点(DOM对象)的颜色会导致X.lookInvalidated(…)被调用,由于节点大小不变,因此不需要重新渲染整个页面。

    推荐文章