我有一个显示HTML代码的修复高度JFrame,当HTML内容高度超过JFrame高度时,我希望它显示滚动条。我该怎么办?到目前为止我有这个代码:
public class Pupup extends JPanel {
public Pupup() {
setLayout(new BoxLayout(this, BoxLayout.LINE_AXIS));
String initialText = "<html>" +
"<body>" +
"</body>" +
"</html>";
theLabel = new JLabel(initialText) {
public Dimension getPreferredSize() {
return new Dimension(640, 480);
}
public Dimension getMinimumSize() {
return new Dimension(640, 480);
}
public Dimension getMaximumSize() {
return new Dimension(640, 480);
}
};
theLabel.setVerticalAlignment(SwingConstants.TOP);
theLabel.setHorizontalAlignment(SwingConstants.LEFT);
JScrollPane pane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
JPanel PANEL = new JPanel();
PANEL.setLayout(new BoxLayout(PANEL, BoxLayout.PAGE_AXIS));
PANEL.add(theLabel);
PANEL.add(pane);
add(PANEL);
}
}
答案 0 :(得分:0)
当您打算使用整个JFrame大小来显示html内容时,不应使用BoxLayout。
首先将HTML小部件放入JScrollPane。 然后将此JScrollPane添加为主面板中的唯一项目。您可以使用GridLayout(1,1)作为主面板。 然后做frame.setContentPane(mainPanel)。