我想以编程方式调整 JScrollPane 的大小。我不想调整 JScrollPane 的视口,而是 JScrollPane 本身与父 JDialog 一起调整。
到目前为止,我尝试设置 JScrollPane 的 PreferredSize 并重新验证它,但它不起作用。这是我创建 JScrollPane 并将其添加到 JDialog 的代码。
public ConnectionTreeTooltip(MainFrame parent) {
super(parent, "", false);
super.setUndecorated(true);
JPanel contentPane = (JPanel) super.getContentPane();
contentPane.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED, Color.blue, Color.red));
tipLabel = new JLabel();
tipLabel.setBackground(Color.WHITE);
scrollPane = new JScrollPane(tipLabel);
scrollPane.setPreferredSize(new Dimension(100, 100));
scrollPane.setBorder(BorderFactory.createEmptyBorder(3, 3, 1, 1));
// super.setLayout(new BorderLayout());
super.getContentPane().add(scrollPane);
super.pack();
}
所以我的 JScrollPane 已经创建好了,每当 JLabel 的文本发生变化时,它的视口就会自动调整大小。
如何与父 JDialog 一起调整 JScrollPane 本身的大小?
谢谢!