Разница между JScrollPane.setviewportview и JScrollPane.add
Я столкнулся с этой новой вещью сегодня, и я не знал почему. Когда я хочу показать что-то на панели, например, я просто добавляю это на панель; но почему я не могу добавить таблицу к панели прокрутки напрямую, и почему я должен вызвать setviewportview()
метод? Что значит add()
метод и что делает setViewProtView()
делать?
1 ответ
В принципе, вы не должны использовать JScrollPane#add
,
JScrollPane
к нему уже прикреплен один компонент, JViewport
это то, что JScrollPane
используется для отображения любого компонента, добавленного в порт просмотра.
setViewportView
это удобный метод для JScrollPane#getViewport#setView
Основная концепция сводится к тому, что с точки зрения панелей прокрутки он будет показывать только один компонент, поэтому add
на самом деле не имеет никакого смысла для этого. Метод является следствием расширения от JComponent
-> Container