在运行时更改JPanel的大小,java
是否可以在运行时更改JPanel的大小、长度和宽度? 我有一个JFrame,里面有一个JPanel,放在一个jscrollPane和一个JButton中。当按下JButton时,我希望JPanel的大小改变,并随机选择长度和宽度值。 为此,我使用以下内容作为JButton的actionListener:在运行时更改JPanel的大小,java,java,swing,jpanel,Java,Swing,Jpanel,是否可以在运行时更改JPanel的大小、长度和宽度? 我有一个JFrame,里面有一个JPanel,放在一个jscrollPane和一个JButton中。当按下JButton时,我希望JPanel的大小改变,并随机选择长度和宽度值。 为此,我使用以下内容作为JButton的actionListener: public void actionPerformed(ActionEvent actionEvent) { jPanel1.repaint(); jPan
public void actionPerformed(ActionEvent actionEvent) {
jPanel1.repaint();
jPanel1.revalidate();
}
我尝试在paintComponent方法中设置jPanel的首选大小,为其维度设置随机值,但这不起作用。任何帮助都将不胜感激。我所做的是设置首选大小,然后使其无效
panel.setPreferredSize(sizes.getCurrentScrollableDrawingPanel());
panel.invalidate();
然后重新绘制父对象
scrollPane.repaint();
对我来说,它是有效的:
getContentPane().remove( panel1);
getContentPane().repaint();
getContentPane().add(panel1);
panel1.setBounds(0, 48, 100, 100);
getContentPane().repaint();
为了更快地获得更好的帮助,请发布一个。