2012-03-04 7 views
0

はJPanelのサイズ(長さ&の幅)を実行時に変更できますか? 私はJFrameを持っています。その中にJPanel(jscrollPane内に配置されています)とJButtonがあります。 JButtonを押すと、長さと幅のランダムな値を取ってJPanelのサイズを変更します。これを行うには 、IはのJButtonのActionListenerとして以下を使用:実行時にJPanelのサイズを変更すると、Java

public void actionPerformed(ActionEvent actionEvent) { 

     jPanel1.repaint(); 
     jPanel1.revalidate();  

} 

及びIは、その次元のランダムな値をとるpaintComponent()メソッドが、これのdidnでのJPanelの推奨サイズを設定しようとしました仕事はありません。どんな助けもありがとう。

+0

が良く助け早くするために、[SSCCE](http://sscce.org/)を投稿してください。 –

答えて

0

私がしたことは、好ましいサイズを設定してから無効にしたことでした。

panel.setPreferredSize(sizes.getCurrentScrollableDrawingPanel()); 
panel.invalidate(); 

次に、親を再描画します。

scrollPane.repaint(); 
+0

私はあなたのソリューションを落としましたが、うまくいきません。 – Mihir

0

は、私にとってはそれが動作します:

 getContentPane().remove(panel1); 
     getContentPane().repaint(); 
     getContentPane().add(panel1); 
     panel1.setBounds(0, 48, 100, 100); 
     getContentPane().repaint(); 
関連する問題