Spec-Zone .ru
спецификации, руководства, описания, API
|
Настройка обеспечивает средство для того, чтобы оно изменило появление и поведение боба в пределах разработчика приложений, таким образом, это удовлетворяет Ваши определенные потребности. Есть несколько уровней настройки, доступной бобовому разработчику, чтобы позволить другим разработчикам извлекать максимальную пользу из потенциальной функциональности боба.
Ссылки полезны для узнавания о редакторах свойств и customizers:
PropertyEditor
интерфейсPropertyEditorSupport
PropertyEditorManager
Customizer
BeanInfo
Появление боба и поведение могут быть настроены во время проектирования в пределах совместимых бобами инструментов разработчика. Есть два способа настроить боб:
Редактор свойств является инструментом для того, чтобы настроить определенный тип свойства. Редакторы свойств активируются в Окне свойств. Это окно определяет тип свойства, ищет соответствующий редактор свойств, и выводит на экран текущую стоимость свойства соответствующим способом.
Редакторы свойств должны реализовать PropertyEditor
интерфейс, который обеспечивает методы, чтобы определить, как свойство должно быть выведено на экран в окне свойств. Следующее число представляет Окно свойств, содержащее myBean1
свойства:
Вы начинаете процесс редактирования этих свойств, щелкая по записи свойства. Щелчок по большинству этих записей переведет отдельные панели в рабочее состояние. Например, чтобы установить foreground
или background
используйте рамки выделения с вариантами цветов, или нажмите "..." кнопка, чтобы работать со стандартным окном ColorEditor. Щелчок toolTipText
свойство открывает окно StringEditor.
Поддержка class PropertyEditorSupport
обеспечивает реализацию по умолчанию PropertyEditor
интерфейс. Разделяя Ваш редактор свойств на подклассы от PropertyEditorSupport
, можно просто переопределить методы, в которых Вы нуждаетесь.
Чтобы вывести на экран текущее значение свойства "выборка" в пределах Окна свойств, Вы должны переопределить isPaintable
возвратиться true
. Тогда следует переопределить paintValue
нарисовать текущее значение свойства в прямоугольнике в окне свойств. Вот то, как ColorEditor
реализации paintValue
:
public void paintValue(java.awt.Graphics gfx, java.awt.Rectangle box) { Color oldColor = gfx.getColor(); gfx.setColor(Color.black); gfx.drawRect(box.x, box.y, box.width-3, box.height-3); gfx.setColor(color); gfx.fillRect(box.x+1, box.y+1, box.width-4, box.height-4); gfx.setColor(oldColor); }
Чтобы поддерживать пользовательский редактор свойств, переопределите еще два метода. Переопределение supportsCustomEditor
возвращать true, и затем переопределять getCustomEditor
возвратить пользовательский экземпляр редактора. ColorEditor.getCustomEditor
возвраты this
.
Кроме того, PropertyEditorSupport
class поддерживает a PropertyChangeListener
список, и свойство огней изменяют уведомления о событии на тех слушателей, когда связанное свойство изменяется.
Редакторы свойств обнаруживаются и связываются с данным свойством следующими способами:
BeanInfo
объект. Редактор свойства title устанавливается со следующей строкой кода: pd.setPropertyEditorClass(TitleEditor.class);
java.beans.PropertyEditorManager.registerEditor
метод. Этот метод берет два параметра: боб тип class, и редактор class, который будет связан с тем типом.PropertyEditorManager
searchs, для что редактор свойств class следующими способами: my.package.ComplexNumber
class, менеджер по редактору свойств искал бы my.package.ComplexNumberEditor
class.Вы узнали, что инструменты разработчика оказывают поддержку для Вас, чтобы создать Ваши собственные редакторы свойств. Что другие потребности визуальные разработчики должны встретить для комплекса, бобов индустриальной силы? Часто это - нежелательный, чтобы иметь все свойства боба, показанного на сингле (иногда огромный) окно свойств. Что, если один единственный корневой выбор относительно типа боба, представленного половиной не важных свойств? Спецификация JavaBeans предусматривает определяемый пользователем customizers, через который можно определить более высокий уровень настройки для бобовых свойств, чем доступно с редакторами свойств.
Когда Вы используете боб Customizer, у Вас есть полный контроль над тем, как сконфигурировать или отредактировать боб. Customizer является приложением, которое определенно предназначается для настройки боба. Иногда свойства недостаточны для того, чтобы представить конфигурируемые атрибуты боба. Customizers используются, где сложные инструкции были бы необходимы, чтобы изменить боб, и где редакторы свойств слишком примитивны, чтобы достигнуть бобовой настройки.
Весь customizers должен:
java.awt.Component
или один из его подклассов.java.beans.Customizer
взаимодействуйте через интерфейс Это означает реализовывать методы, чтобы зарегистрироваться PropertyChangeListener
объекты, и нацеливающее свойство изменяют события в тех слушателях, когда изменение к целевому бобу произошло.BeanInfo.getBeanDescriptor
.