JLabel
或JButton
如何通知JScrollPane
视图大小已更改(例如设置了图标时),以便确定是否需要显示滚动条?
如何在不使用上述组件的情况下,使用简单的JPanel
实现类似的行为来显示图像?
PS:我查看了源代码,到目前为止,我看到的是一个Component被称为“view”并被传递给JView
或JViewport
,它注册了一些听众。从那时起,事情似乎不清楚。
答案 0 :(得分:4)
正如JScrollPane
API中所述,除非您更改策略,否则只要组件的内容大于视图,就会出现水平和垂直滚动条。一旦pack()
确定了Window
“的大小以适合其子组件的首选大小和布局,”当验证并重新绘制容器时,滚动窗格会看到任何后续更改。有关详情,请参阅Painting in AWT and Swing。