MATLAB® отображает информацию в командном окне, когда операторы, который не отключен с точкой с запятой, возвращают переменную. Например, этот оператор создает структуру с полем, которое содержит номер 7.
a.field1 = 7
MATLAB отображает имя переменной, класс и значение.
a = struct with fields: field1: 7
MATLAB предоставляет пользовательским классам подобную функциональность отображения. Пользовательские классы могут настроить, как MATLAB отображает объекты класса с помощью API, обеспеченного matlab.mixin.CustomDisplay
класс. Чтобы использовать этот API, выведите свой класс из matlab.mixin.CustomDisplay
.
MATLAB добавляет методы по умолчанию под названием disp
и display
ко всем классам MATLAB, которые не реализуют их собственные методы с теми именами. Эти методы не отображаются, но создают простое отображение по умолчанию.
Простое отображение по умолчанию состоит из следующих частей:
Заголовок, показывающий имя класса и размерности для нескалярных массивов.
Список всех нескрытых публичных свойств, показанных в порядке определения в классе.
Фактическое отображение зависит от того, является ли объект скаляром или нескалярный. Кроме того, существуют специальные отображения для скалярного указателя на массивы удаленного объекта и пустого объекта. Объекты во всех этих состояниях отображены по-другому, если объекты не имеют никаких свойств.
details
функция создает значение по умолчанию подробное отображение. Подробное отображение добавляет эти элементы в простое отображение:
Использование полностью определенных имен классов
Соединитесь с handle
класс, если объект является указателем
Ссылки на methods
, events
, и superclasses
функции выполняются на объекте.
Смотрите Класс со Значением по умолчанию Отображение объектов для примера того, как MATLAB отображает объекты.
MATLAB отображает свойства объектов, которые сделали, чтобы общественность получила доступ, и не скрыты (см. Атрибуты свойств). Наследованные абстрактные свойства исключены из отображения. Когда отображаемый объект является скаляром, любые динамические свойства, присоединенные к объекту, также включены.
matlab.mixin.CustomDisplay
класс обеспечивает интерфейс, который можно использовать, чтобы настроить отображение объекта для класса. Чтобы использовать этот интерфейс, выведите свой класс из CustomDisplay
:
classdef MyClass < matlab.mixin.CustomDisplay
CustomDisplay
классом является HandleCompatible
, таким образом, можно использовать его и в сочетании со значением и обработать суперклассы.
Примечание
Вы не можете использовать matlab.mixin.CustomDisplay
выводить пользовательское отображение для классов перечисления.
CustomDisplay
интерфейс не позволяет вам заменять disp
Отображение
, и details
. Вместо этого замените любую комбинацию методов индивидуальной настройки, заданных с этой целью.
Существует две группы методов, которые вы используете, чтобы настроить отображение объекта для вашего класса:
Сборка Part builder methods строки используется для стандартного отображения. Замените любой из этих методов, чтобы изменить соответствующие части отображения.
State handler methods называется для объектов в определенных состояниях, как скаляр, нескалярный, и так далее. Замените любой из этих методов, чтобы обработать объекты в определенном состоянии.
Все эти методы имеют защищенный доступ и должны быть заданы, как защищено в вашем подклассе CustomDisplay
(то есть, Access = protected
).
Существует три части что состав отображение стандартного объекта — заголовок, список свойств и нижний колонтитул
Например, вот отображение стандартного объекта для containers.Map
объект:
Отображение объекта по умолчанию не включает нижний колонтитул. Подробное отображение предоставляет больше информации:
Можно настроить, как MATLAB отображает объекты в результате выражений, что экранные объекты в командном окне, такие как неотключенные операторы, которые возвращают объекты или вызовы disp
и display
. Результаты, отображенные при вызове details
на объекте или объектном массиве не изменяются CustomDisplay
API.
Каждая часть отображения объекта имеет связанный метод, который собирает соответствующую часть отображения.
Метод | Цель | Значение по умолчанию |
---|---|---|
| Создайте текст, используемый для заголовка. | Возвращает |
| Задайте то, как и что свойства отображают, включая порядок, значения и группировку. | Возвращает массив |
| Создайте текст, используемый для нижнего колонтитула. | Существует два нижних колонтитула:
|
Существует четыре объектных состояния, которые влияют, как MATLAB отображает объекты:
Допустимый скалярный объект
Нескалярный объектный массив
Массив пустого объекта
Скалярный указатель на удаленный объект
Каждое объектное состояние имеет связанный метод, который MATLAB вызывает, отображая объекты, которые находятся в том конкретном состоянии.
Метод обработчиков состояния | Требовавшийся объект в этом состоянии |
---|---|
displayScalarObject |
|
displayNonScalarObject |
|
displayEmptyObject |
|
displayScalarHandleToDeletedObject |
|
CustomDisplay
класс обеспечивает служебные методы, что возвращаемые строки, которые используются в различных частях различных параметров отображения. Эти статические методы возвращают текст, который упрощает создание индивидуально настраиваемых отображений объекта.
Если экран компьютера не поддерживает гипертекстовое соединение, строки возвращены без ссылок.
Метод | Входные параметры | Выходные параметры |
---|---|---|
Массив доступного объекта | Объектные размерности преобразованы в | |
| Отображает заголовки и заданные группы свойства | |
Объект | Простое имя класса соединяется с документацией объекта | |
'none' | Текст | |
Объект | Текст, содержащий фразу | |
Объект | Текст, содержащий соединенное имя класса, соединитесь, чтобы обработать страницу (если класс Handle) и | |
'none' | Текст | |
Объект | Текст, содержащий соединенное имя класса и фразу |