В процессе создания пользовательского отображения методы CustomDisplay
вызывают функцию size
в нескольких точках:
disp
вызывает size
, чтобы определить который метод обработчиков состояния вызвать.
size
вызовов метода getHeader
по умолчанию, чтобы определить, отобразить ли скалярный или нескалярный заголовок.
size
вызовов метода displayPropertyGroups
по умолчанию, чтобы определить, должно ли это искать значения свойств, когда группа свойства является массивом ячеек имен свойства. По умолчанию только скалярные объекты отображают значения свойств.
Если ваш класс перегружает функцию size
, то MATLAB® вызывает перегружающуюся версию. Необходимо гарантировать, что реализация size
сопоставима со способом, которым вы хотите к экранным объектам класса.
Необычная или неподходящая реализация size
может привести к нежелательному поведению отображения. Например, предположите класс перегрузки, size
сообщает об объекте как о скаляре, когда это не. В этом классе список свойств, состоящий из массива ячеек строк, приводит к значениям свойств первого объекта отображаемого массива. Это поведение может произвести впечатление, что все объекты в массиве имеют те же значения свойств.
Однако сообщая об объекте как о скаляре, когда на самом деле объект является пустыми результатами в объекте, отображающемся как массив пустого объекта. Методы по умолчанию интерфейса CustomDisplay
всегда определяют, является ли вход пустым массивом прежде, чем попытаться к доступу к значениям свойств.
Когда вы заменяете методы CustomDisplay
, чтобы реализовать ваше отображение пользовательского объекта, рассмотреть, как перегружающийся метод размера может влиять на результат.