Spec-Zone .ru
спецификации, руководства, описания, API
|
public interface PropertyEditor
PropertyEditor поддерживает множество различных видов способов вывести на экран и обновить значения свойств. Большинство PropertyEditors должно будет только поддерживать подмножество различных вариантов, доступных в этом API.
Простой PropertyEditors может только поддерживать getAsText и setAsText методы и не должен поддерживать (говорят) paintValue или getCustomEditor. Более составные типы могут быть неспособны поддерживать getAsText и setAsText, но будут вместо этого поддерживать paintValue и getCustomEditor.
Каждый propertyEditor должен поддерживать один или больше трех простых стилей дисплея. Таким образом это может или (1), поддержка isPaintable или (2) оба возвращает непустую строку [] от getTags () и возвращает ненулевое значение из getAsText, или (3) просто возвращают непустую строку из getAsText ().
Каждый редактор свойств должен поддерживать запрос setValue, когда объект параметра имеет тип, для которого это - соответствующий propertyEditor. Кроме того, каждый редактор свойств должен или поддерживать пользовательского редактора, или поддерживать setAsText.
У каждого PropertyEditor должен быть нулевой конструктор.
Модификатор и Тип | Метод и Описание |
---|---|
void |
addPropertyChangeListener(PropertyChangeListener listener)
Добавляет слушатель для изменения значения.
|
Строка |
getAsText()
Получает значение свойства как текст.
|
Компонент |
getCustomEditor()
PropertyEditor может хотеть делать доступным полный пользовательский Компонент, который редактирует его значение свойства.
|
Строка |
getJavaInitializationString()
Возвращает фрагмент кода Java, который может использоваться, чтобы установить свойство, чтобы соответствовать текущее состояние редакторов.
|
Строка[] |
getTags()
Если значение свойства должно быть одним из ряда известных теговых значений, то этот метод должен возвратить массив тегов.
|
Объект |
getValue()
Получает значение свойства.
|
boolean |
isPaintable()
Определяет, является ли этот редактор свойств paintable.
|
void |
paintValue(Graphics gfx, Rectangle box)
Нарисуйте представление значения в данную область экранного недвижимого имущества.
|
void |
removePropertyChangeListener(PropertyChangeListener listener)
Удаляет слушателя для изменения значения.
|
void |
setAsText(String text)
Установите значение свойства, анализируя данную Строку.
|
void |
setValue(Object value)
Набор (или изменение) объект, который должен быть отредактирован.
|
boolean |
supportsCustomEditor()
Определяет, поддерживает ли этот редактор свойств пользовательского редактора.
|
void setValue(Object value)
value
- Новый целевой объект, который будет отредактирован. Отметьте, что этот объект не должен быть изменен PropertyEditor, скорее PropertyEditor должен создать новый объект содержать любое измененное значение.Object getValue()
boolean isPaintable()
void paintValue(Graphics gfx, Rectangle box)
Если PropertyEditor не соблюдает запросы краски (см. isPaintable), этот метод должен быть тихим noop.
У данного Графического объекта будут шрифт значения по умолчанию, цвет, и т.д. родительского контейнера. PropertyEditor может изменить графические атрибуты, такие как шрифт и покрасить и не должен восстановить старые значения.
gfx
- Графический объект нарисовать в.box
- Прямоугольник в пределах графического объекта, в который мы должны нарисовать.String getJavaInitializationString()
Фрагмент кода должен быть свободным контекстом и должен быть юридическим выражением Java как определено JLS.
Определенно, если выражение представляет вычисление тогда, все классы и статические элементы должны быть полностью определены. Это правило применяется к конструкторам, статическим методам и не примитивным параметрам.
Предостережение должно использоваться, оценивая выражение, поскольку это может выдать исключения. В частности генераторы кода должны гарантировать, что сгенерированный код скомпилирует в присутствии выражения, которое может выдать проверенные исключения.
Результаты в качестве примера:
2
new java.awt.Color(127,127,34)
java.awt.Color.orange
javax.swing.Box.createRigidArea(new java.awt.Dimension(0, 5))
;
'), чтобы закончить выражение.String getAsText()
Нуль возвратов, если значение не может быть выражено как доступная для редактирования строка.
Если ненулевое значение возвращается, то PropertyEditor должен быть подготовлен проанализировать ту строку назад в setAsText ().
void setAsText(String text) throws IllegalArgumentException
text
- Строка, которая будет проанализирована.IllegalArgumentException
String[] getTags()
Component getCustomEditor()
Высокоуровневый код, который вызывает getCustomEditor, может или встроить Компонент в некоторое большее окно свойств, или это может поместить это в свое собственное отдельное диалоговое окно, или...
boolean supportsCustomEditor()
void addPropertyChangeListener(PropertyChangeListener listener)
PropertyChangeEvent
на всех зарегистрированных PropertyChangeListener
s, определяя null
значение для имени свойства и его непосредственно как источник.listener
- PropertyChangeListener
добавитьvoid removePropertyChangeListener(PropertyChangeListener listener)
listener
- PropertyChangeListener
удалить
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92