文档

自定义标题、属性列表和页脚

客观的

定制每一个显示的三个部分——头,房地产集团和页脚。

设计自定义显示

请注意

下面的例子使用了EmployeeInfo类所描述的类用默认对象显示部分。

标题:

  • 使用默认标题nonscalar对象数组。

  • 构建标题文本类名和部门名称(从有关部门属性)

属性:

  • Nonscalar对象数组显示的一个子集比默认属性名以不同的顺序。

  • 标量对象创建两个头衔的房地产集团(公共信息个人信息)。

页脚:

  • 页脚添加到显示,只有当显示的对象是一个有效的标量属性值。

这是定制显示的对象EmployeeInfo类。

Emp123 =EmployeeInfo部门:产品开发公共信息名称:比尔托克的职务高低:“软件工程师”个人工资信息:1000密码:bill123公司私有化

这是自定义显示的数组EmployeeInfo对象:

[Emp123, Emp124] ans = 1 x2EmployeeInfo数组的属性:部门名称职务高低

这是显示一个空对象的数组:

> > EmployeeInfo.empty x5 (0 5) ans = 0EmployeeInfo数组的属性:部门名称职务高低

这里是显示的处理删除对象(EmployeeInfo是一个处理类):

> >删除(Emp123) > > Emp123 Emp123 =句柄被删除EmployeeInfo

实现

EmployeeInfo类覆盖三个matlab.mixin.CustomDisplay方法来实现显示如图所示:

每个方法必须与以下产生所需的结果输入:

  • 标量对象

  • Nonscalar对象数组

  • 空对象数组

getHeader方法覆盖

MATLAB®调用getHeader标题文本。的EmployeeInfo类重写这个方法来实现自定义标量显示的标题。这是它是如何工作的:

  • Nonscalar(包括空对象)数组调用超类getHeader,它返回默认的标题。

  • 标量处理删除对象不会导致调用getHeader

  • 标量输入构建一个定制的标题使用getClassNameForHeader静态方法返回与类名文本,和的值部门财产。

这是EmployeeInfo覆盖的getHeader方法。所需的保护访问从超类继承。

方法(访问=保护)函数头= getHeader (obj)如果~ isscalar (obj)头= getHeader@matlab.mixin.CustomDisplay (obj);其他的className = matlab.mixin.CustomDisplay.getClassNameForHeader (obj);newHeader =(类名,的部门:obj.Department);头= sprintf (“% s \ n”,newHeader);结束结束结束

getPropertyGroups覆盖

MATLAB调用getPropertyGroups得到PropertyGroup对象,控制如何显示属性。该方法覆盖定义了两个不同的属性列表取决于对象的状态:

  • nonscalar输入,包括空数组和数组包含处理删除对象,创建一个属性列表作为一个单元阵列来重新排序属性。

    默认情况下,MATLAB nonscalar不显示属性值输入。

  • 对于标量输入,创建两个房地产集团标题。标量代码分支列表属性比nonscalar案例,包括不同的顺序工资密码属性。MATLAB自动分配属性值。

  • 标量处理删除对象不会导致调用getPropertyGroups

两个分支返回一个matlab.mixin.util.PropertyGroup对象,它决定如何显示对象属性。

这是EmployeeInfo覆盖的getPropertyGroups方法。受保护访问从超类继承。

方法(访问=保护)函数propgrp = getPropertyGroups (obj)如果~ isscalar (obj) propList = {“部门”,“名字”,“职务高低”};propgrp = matlab.mixin.util.PropertyGroup (propList);其他的gTitle1 =“公共信息”;gTitle2 =“个人信息”;propList1 = {“名字”,“职务高低”};propList2 = {“工资”,“密码”};propgrp (1) = matlab.mixin.util.PropertyGroup (propList1 gTitle1);propgrp (2) = matlab.mixin.util.PropertyGroup (propList2 gTitle2);结束结束结束

getFooter覆盖

MATLAB调用getFooter页脚文本。的EmployeeInfogetFooter方法定义了一个页脚显示,包括只有当输入一个有效的标量对象。在所有其他情况下,getFooter返回一个空字符向量。

标量处理删除对象不会导致调用getFooter

方法(访问=保护)函数页脚= getFooter (obj)如果isscalar (obj)页脚= sprintf (“% s \ n”,“公司私有化”);其他的页脚=;结束结束结束

完整的课程清单

相关的话题

这个主题有帮助吗?