gpt4 book ai didi

java - JScrollPane 内的 JEditorPane 不显示滚动条

转载 作者:行者123 更新时间:2023-12-01 17:17:10 26 4
gpt4 key购买 nike

我正在尝试将网页嵌入到 JScrollPane 中,该 JScrollPane 位于 JEditorPane 内,JEditorPane 是 JFrame 内的一个矩形,就像在 HTML 中一样,您拥有一个网页,然后可以在网页上的某个位置有一个小矩形,该矩形的 iframe 为另一个网页。我使用 setBounds 定义矩形的原因是因为该矩形比实际窗口小,因为窗口中还有其他元素。

        JEditorPane web = new JEditorPane();
web.setEditable(false);

try {
web.setPage("http://www.example.com");
}catch (IOException e) {
web.setContentType("text/html");
web.setText("<html>Could not load</html>");
}
final JScrollPane scrollPane = new JScrollPane(web);
getContentPane().add(scrollPane);
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
scrollPane.getVerticalScrollBar().setValue(0);
}
});
scrollPane.setVerticalScrollBarPolicy(
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
scrollPane.setPreferredSize(new Dimension(250, 145));
scrollPane.setMinimumSize(new Dimension(10, 10));
rweb = new Rectangle(20, 20, 1150, 600);
web.setBounds(rweb);
window.add(web);

最佳答案

我简化了你的代码。以下作品。

您有许多额外的语句使事情变得复杂,例如添加 web 两次(一次添加到 Scroll,一次添加到 JFrame)。

另一个例子是 scrollPane.getVerticalScrollBar().setValue(0); 。滚动条默认从零开始。

import java.awt.Dimension;
import java.io.IOException;

import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JScrollPane;

public class webPane extends JFrame {

public static void main(String args[])
{
webPane e = new webPane();
e.setVisible(true);
}


public webPane() {

JEditorPane web = new JEditorPane();
web.setEditable(false);

try {
web.setPage("http://www.cnn.com");
} catch (IOException e) {
web.setContentType("text/html");
web.setText("<html>Could not load</html>");
}

final JScrollPane scrollPane = new JScrollPane(web);
getContentPane().add(scrollPane);
this.setBounds( 0, 0, 200, 200);

}

}

关于java - JScrollPane 内的 JEditorPane 不显示滚动条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21188263/

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