java - jScrollPane Scroll dissapears after jPanel resize -


i'm writing java gui application using netbeanside 7.4 , have encountered following problem:

i have jpannel enclosed in jscrollpane of initial dimension 300,160 every time click on jbutton @ runtime, resize jpannel follows:

jpanel3.setpreferredsize(new dimension(300, (count + 3) * 30)); jpanel3.repaint(); 

if count variable larger 3, vertical scrollbar adapts jpannel every time resize it.

but if count less 3, vertical scrollbar dissapears, , when resize jpannel again ( lets say, count = 10), scrollbar doesn't show anymore.

is normal? how can fix it?

is normal? how can fix it?

don't know if normal or not, not proper way resize panel. swing component responsible determining size, not application code. done creating setter method when want change property of component.

if want dynamically change size of panel should override getpreferredsize() method of custom panel. like:

@override public dimentsion getpreferredsize() {     return new dimension( new dimension(300, (getcount() + 3) * 30) ); } 

then in class should create setter (and getter) method count:

public void setcount(int count) {     this.count = count;     revalidate()     repaint(); } 

now revalidate cause preferred size recalculated , scroll pane use new preferred size.


Comments

Popular posts from this blog

PHPMotion implementation - URL based videos (Hosted on separate location) -

javascript - Using Windows Media Player as video fallback for video tag -

c# - Unity IoC Lifetime per HttpRequest for UserStore -