Spec-Zone .ru
спецификации, руководства, описания, API
|
Это - более усовершенствованная тема, и большинство людей не должно волноваться об этом. Однако, если у Вас будет пользовательский компонент, то Вы должны будете обработать расположение отбрасывания, представляющее вас непосредственно.
Можно зарегистрироваться, чтобы быть уведомленными всякий раз, когда dropLocation
изменения свойства. Вы прислушались бы к этому изменению и сделали бы Ваш собственный рендеринг расположения отбрасывания в пользовательском средстве рендеринга для компонента или в paintComponent
метод, используя getDropLocation
метод.
Вот пример прислушивания dropLocation
свойство:
class Repainter extends PropertyChangeListener { public void propertyChange(PropertyChangeEvent pce) { repaintDropLocation(pce.getOldValue()); repaintDropLocation(pce.getNewValue()); } } comp.addPropertyChangeListener("dropLocation", newRepainter());
Вот пример paintComponent
подход:
public void paintComponent(Graphics g) { super.paintComponent(g); DropLocation loc= getDropLocation(); if (loc == null) { return; } renderPrettyIndicatorAt(loc); }