gpt4 book ai didi

java - 当应该显示 editorPane (html) 时,scrollPane 随机保持灰色

转载 作者:太空宇宙 更新时间:2023-11-04 09:00:28 25 4
gpt4 key购买 nike

由于某种原因,我的 HTML 页面没有 100% 显示在屏幕上,而它应该在屏幕上显示,这对我来说似乎是一个计时问题。如果我删除滚动 Pane 并仅使用 EditorPane,它就可以正常工作。

我应该在下面添加什么样的代码来强制 java applet 屏幕重绘/刷新,我可以以某种方式等到所有图像真正加载完毕吗?目前,图像是在 GUI 上的文本可见之后才绘制的。
(当我最小化+最大化窗口时,灰色消失并出现丢失的文本。)

我使用 SynchronousHTMLEditorKit 作为 m_editorPane.setEditorKitForContentType

private JEditorPane m_editorPane = new JTextPane();
private JScrollPane m_scrollPane = new JScrollPane();
....
JEditorPane.registerEditorKitForContentType( "text/html", "SynchronousHTMLEditorKit" );
m_editorPane.setEditorKitForContentType( "text/html", new SynchronousHTMLEditorKit() );
m_editorPane.setPage(ResourceLoader.getURLforDataFile(file));
m_scrollPane.getViewport().add(m_editorPane);
m_scrollPane.validate();
m_scrollPane.repaint(); <-- does not seem to solve this

add(m_scrollPane);
/// add( m_editorPane) <-- this WORKS !!

SynchronousHTMLEditorKit 定义为:

public class SynchronousHTMLEditorKit extends HTMLEditorKit {
public Document createDefaultDocument(){
HTMLDocument doc = (HTMLDocument)(super.createDefaultDocument());
doc.setAsynchronousLoadPriority(-1); //do synchronous load
return doc;
}

最佳答案

尝试将验证和重绘调用移动到添加之后的底部,并在容器上调用它们,而不是滚动 Pane

add(m_scrollPane);
validate();
repaint();

关于java - 当应该显示 editorPane (html) 时,scrollPane 随机保持灰色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/756105/

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