Spec-Zone .ru
спецификации, руководства, описания, API
JavaFX 2.2

Пакет javafx.scene.control

Средствами управления пользовательским интерфейсом JavaFX (Средства управления UI или только Средства управления) являются специализированные Узлы в JavaFX Scenegraph, которому особенно удовлетворяют для повторного использования во многих различных контекстах приложения.

См.: Описание

Пакет javafx.scene.control Описание

Средствами управления пользовательским интерфейсом JavaFX (Средства управления UI или только Средства управления) являются специализированные Узлы в JavaFX Scenegraph, которому особенно удовлетворяют для повторного использования во многих различных контекстах приложения. Они разрабатываются, чтобы быть высоконастраиваемыми визуально разработчиками и разработчиками. Они разрабатываются, чтобы работать хорошо с системами расположения. Примеры видных средств управления включают Button, Label, ListView, и TextField.

Так как Средства управления Nodes в scenegraph они могут быть свободно смешаны с Groups, Images, Media, Text, и basic geometric shapes. В то время как запись новых Средств управления UI не тривиальна, используя и моделирование их очень легки, особенно существующим веб-разработчикам.

Остаток от этого документа опишет основную архитектуру JavaFX библиотека Управления UI, как разработать существующие средства управления, запишите пользовательскую кожу, и как использовать средства управления, чтобы создать более сложные пользовательские интерфейсы.

Архитектура

Средства управления следуют за классическим шаблоном разработки MVC. Control "модель". Это содержит и состояние и функции, которые управляют тем состоянием. class самого управления не знает, как он представляется или каково взаимодействие с пользователем. Эти задачи делегируются к Skin ("представление"), которое может внутренне выделить представление и функциональность контроллера в отдельные классы, хотя в настоящее время нет никакого общедоступного API для аспекта "контроллера".

Все Средства управления расширяют от Управления class, который является поочередно a Parent узел, и который является a Node. У каждого Управления есть ссылка на единственную Кожу, которая является реализацией представления для Управления. Управление делегирует к Коже ответственность вычислений минуты, максимальной, и размеры приставки Управления, базового смещения, и тестирования хита (включение и пересечение). Это - также ответственность Кожи, или делегат Кожи, чтобы реализовать и переводоем ко всем соответствующим ключевым событиям, которые происходят на Управлении, когда это содержит фокус.

Управление

Управление расширяется от Parent, и как таковой, не вершина. С точки зрения разработчика или разработчика может думаться Управление, как будто это была вершина во многих случаях. Например, разработчик или разработчик могут рассмотреть Кнопку, как будто это был Прямоугольник или другая простая вершина.

Так как Управление изменяемого размера, Управление будет автоизмерено к его привилегированному размеру на каждом scenegraph импульсе. Установка width и height Управления не влияет на свой привилегированный размер. Когда использующийся в контейнере расположения, ограничения расположения, наложенные на Управление (или вручную определенный на Управлении), определят, как это располагается и измеряется.

В любое время может быть изменена Кожа Управления. Выполнение так отметит Управление, поскольку бывший должный быть размеченным начиная с изменения Кожи, вероятно, изменил привилегированный размер Управления. Если никакая Кожа не будет определена в то время, когда Управление создается, то значение по умолчанию основанная на CSS кожа будет обеспечено для всех встроенных Средств управления.

Каждому Управлению можно было определить дополнительную подсказку. Подсказкой является Управление, которое выводит на экран некоторых (обычно текстовый) информация об управлении пользователю, когда мышь нависает над Управлением с некоторого промежутка времени. Это может быть разработано из CSS то же самое как с другими Средствами управления.

focusTraversable переопределяется в Управлении, чтобы быть истиной по умолчанию, тогда как с Узлом это - ложь по умолчанию. Средства управления, которые не должны быть focusable по умолчанию (таким как Метка) переопределяют это, чтобы быть ложью.

getMinWidth, getMinHeight, getPrefWidth, getPrefHeight, getMaxWidth, и функции getMaxHeight делегируются непосредственно к Коже. baselineOffset метод делегируется к узлу кожи. Не рекомендуется, чтобы подклассы изменили эти делегации.

Моделирование Средств управления

Есть два метода для того, чтобы настроить вид Управления. Самое трудное и все же самый гибкий подход должен записать новую Кожу для Управления, которое точно реализует visuals, которого Вы требуете для Управления. Консультируйтесь с документацией Кожи для большего количества деталей.

Самое легкое и все же очень мощный метод для того, чтобы разработать созданный в Средствах управления при использовании CSS. Пожалуйста, отметьте, что в этом выпуске следующее описание CSS применяется только к Коже значения по умолчанию, предусмотренной созданный в Средствах управления. Последующие выпуски сделают это общедоступным для любых пользовательских сторонних Средств управления, которые требуют использовать в своих интересах эти возможности CSS.

Каждая Кожа значения по умолчанию для созданного в Средствах управления состоит многократный индивидуально styleable области или области. Это очень походит на страницу HTML, которая составляется из <отделения> 's и затем разрабатывается из CSS. Каждая отдельная область может быть оттянута с фонами, границами, изображениями, дополнением, полями, и так далее. Поддержка CSS JavaFX включает возможность иметь многократные фоны и границы, и получить цвета. Эти возможности делают чрезвычайно легким изменить вид Средств управления в JavaFX из CSS.

Цвета, используемые для рисования Кожи значения по умолчанию созданного в Средствах управления, все получаются из основного цвета, цвета для акцентов и цвета фона. Просто, изменяя основной цвет для Управления можно изменить полученные градиенты и создать Кнопки или другие Средства управления, которые визуально согласуются с Кожей значения по умолчанию, но визуально выделяются.

Как со всеми другими Узлами в scenegraph, Средства управления могут быть разработаны при использовании внешней таблицы стилей, или определяя стиль непосредственно на Управлении. Хотя для примеров легче выразить и понять, определяя стиль непосредственно на Узле, рекомендуется использовать внешнюю таблицу стилей и использовать или styleClass или идентификатор Управления, так же, как Вы использовали бы "class" или идентификатор элемента HTML с CSS HTML.

Каждое Управление UI определяет styleClass, который может использоваться, чтобы разработать средства управления из внешней таблицы стилей. Например, Кнопочному управлению дают, CSS "кнопки" разрабатывает class. Имена class стиля CSS являются разделенным от дефиса нижним регистром в противоположность Camel-регистру, иначе, они - точно то же самое. Например, Кнопка является "кнопкой", RadioButton является "переключателем", Подсказка является "подсказкой" и так далее.

Документация class для каждого Управления определяет области значения по умолчанию Кожи, которые могут быть разработаны. Для дополнительной информации относительно возможностей CSS, предоставленных JavaFX, см. CSS Справочник.

JavaFX 2.2

Copyright (c) 2008, 2012, Oracle и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.