ActionScript - Combobox - это выбор?
-
26-09-2019 - |
Вопрос
Я не понимаю документацию Adobe для класса SelectableList:
SelectableList - это базовый класс для всех компонентов на основе списка - например, список, тильист, DataGrid и Поле со списком компоненты.
SelectableList не базовый класс для Combobox:
SelectableList > BasesCrollPane> UIComponent> Sprite> DisplayObjectContainer> InteractiveObject> DisplayObject> EventDispatcher> Объект
Поле со списком > UIComponent> Sprite> DisplayObjectContainer> InteractiveObject> DisplayObject> EventDispatcher> Объект
import fl.controls.*;
var l:List = new List();
trace(l is SeletableList); //true
var tl:TileList = new TileList();
trace(tl is SelectableList); //true
var dg:DataGrid = new DataGrid();
trace(dg is SelectableList); //true
var cb:ComboBox = new ComboBox();
trace(cb is SelectableList); //false
Это ошибка? Или я что-то упускаю?
Решение
Это просто как Adobe выражает себя в документации иногда: смущенно.
Чтобы положить его в простые условия OOP, это разница между расширением класса («является a») и использование композиции («имеет A»):
Список, тильист, DataGrid это Выбираемый список (потому что каждый из них выбирается список выбора)
Поле со списком имеет Выбираемый список (потому что это имеет Список компонент, выставленный через это падать недвижимость (который это Выбираемый список)).
Надеюсь, это понятно.