Spec-Zone .ru
спецификации, руководства, описания, API
|
Перетаскивание в пустую таблицу представляет собой уникальную проблему. Придерживаясь надлежащих шагов:
TransferHandler
.setDragEnabled(true)
.Вы запускаете приложение и пытаетесь перетащить допустимые данные в таблицу, но это отклоняет отбрасывание. Что дает?
Причина состоит в том, что пустая таблица (в отличие от пустого списка или пустого дерева) не занимает места в области прокрутки. JTable
автоматически не простирается, чтобы заполнить height a JScrollPane
's область просмотра — это только приводит так много вертикальной комнаты в рабочее состояние как необходимый для строк, что это содержит. Так, когда Вы перетаскиваете по пустой таблице, Вы не фактически по таблице и сбоям отбрасывания.
Можно сконфигурировать таблицу, чтобы позволить отбрасывание где угодно в порту представления, вызывая JTable.setFillsViewportHeight(boolean)
. Значение по умолчанию для этого свойства обманывает, гарантируют назад совместимость.
Следующий пример, FillViewportHeightDemo
, позволяет Вам экспериментировать с отбрасыванием на пустую таблицу. Демонстрационный пример содержит пустую таблицу с пятью столбцами, которой установили ее режим отбрасывания, чтобы вставить строки и перетащить источник, который обеспечивает пять разграниченных запятой значений тот автоинкремент.
FillViewportHeightDemo
Можно исследовать источник на
, но основная точка, чтобы помнить - то, что следует обычно вызвать FillViewportHeightDemo.java
setFillsViewportHeight(true)
на любой таблице, которая примет отброшенные данные.