主要内容

GridLayout属性

控制网格布局管理器的行为

网格布局管理器位置UI组件在一个看不见的网格的行和列,横跨整个图或容器内的图。通过改变属性值的网格布局,您可以修改其行为的某些方面。使用点符号来引用一个特定的对象和属性:

无花果= uifigure;g = uigridlayout(图);g。ColumnWidth ={100年,' 1 x '};

网格

全部展开

列宽度,指定为一个细胞包含数组“健康”、数字或数字搭配“x”字符。您可以指定值的任意组合。细胞数组中元素的个数控制网格中的列数。例如,要创建一个网格4列,指定1-by-4细胞数组。可以指定列宽为字符串数组或数字数组,只有指定的元素是相同类型的,喜欢的[" 1 x”“2 x”x“1”)(100 200)

有三种不同类型的列宽:

  • 适合宽度——指定“健康”。列宽度自动调整以适应其内容。对于基于文本的组件,“健康”宽度调整字体属性显示整个文本。对于非文本的组件,“健康”宽度是基于组件的默认大小和其他因素。使用“健康”宽度如果你想避免硬编码列宽度适合组件,或如果你的程序翻译成另一种语言或运行在不同的平台上。

  • 固定宽度的像素——指定一个数字。列的宽度是固定的指定数量的像素。当父容器、调整大小不改变列宽。

  • 搭配一个可变宽度——指定一个号码“x”字符(例如,“1 x”)。当父容器、调整大小列宽度的增长或萎缩。不同宽度的列填满剩下的水平空间列固定宽度不使用。你对数量“x”字符分割剩余空间的重量在不同宽度的列。如果网格中只有一个不同宽度的列,那么它使用的所有剩余空间无论号码。如果有多个使用相同数量的不同宽度的列,然后他们分享同样的空间。否则,大量的空间数量成正比。

例如,{“适合”,200年,“2 x”,“1 x”}指定第一列的宽度大小以适应其内容,第二列是固定在200像素,最后两列分享剩下的水平空间。第三列使用两倍的空间作为第四列。

改变布局的某些方面可以影响这个属性的值。例如,添加更多的组件一个完全填充的网格变化网格的大小,以适应新的组件。

改变了ColumnWidth属性的网格布局上已经包含组件不会改变组件的布局。例如,如果你想动态删除一列包含组件,ColumnWidth属性不会改变,直到你将这些组件的列。

行高度,指定为一个细胞包含数组“健康”、数字或数字搭配“x”字符。您可以指定值的任意组合。细胞数组中元素的个数控制在网格的行数。例如,要创建一个网格,有4行,指定一个1-by-4单元阵列。行高可以指定为字符串数组或数字数组,只有指定的元素是相同类型的,喜欢的[" 1 x”“2 x”x“1”)(100 200)

有三种不同类型的行高:

  • 适合身高——指定“健康”。行高度自动调整以适应其内容。对于基于文本的组件,“健康”高度调整字体属性显示整个文本。对于非文本的组件,“健康”高度是基于组件的默认大小和其他因素。使用“健康”高度如果你想避免硬编码行高以适应组件,或如果你的程序翻译成另一种语言或运行在不同的平台上。

  • 固定在像素高度——指定一个数字。行高度是固定在您指定像素的数量。当父容器、调整大小不改变行高。

  • 搭配一个变量高度——指定一个号码“x”字符(例如,“1 x”)。当父容器、调整大小行增长或萎缩。可变高度行填满剩下的垂直空间,fixed-height行不使用。你对数量“x”字符分割剩余空间的重量在所有可变高度的行。如果网格只有一个可变高度的行,那么它使用的所有剩余空间无论号码。如果有多个可变高度使用相同数量的行,然后他们分享同样的空间。否则,大量的空间数量成正比。

例如,{“适合”,200年,“2 x”,“1 x”}第一行指定的高度尺寸符合其内容,第二行是固定在200像素,最后两行分享剩下的垂直空间。第三行使用两倍的空间作为第四行。

改变布局的某些方面可以影响这个属性的值。例如,添加更多的组件一个完全填充的网格变化网格的大小,以适应新的组件。

改变了RowHeight属性的网格布局上已经包含组件不会改变组件的布局。例如,如果您尝试动态删除一行包含组件,RowHeight属性不会改变,直到你将这些组件的行。

列间距,指定为一个标量值的像素相邻网格中的列。您指定适用于所有列数。

行间距,指定为一个标量网格中的相邻行之间的像素数量。适用于所有指定行数。

填充在网格的外围,指定为一个向量的形式(左右下角上)。向量的元素表中描述如下。

向量元素 描述

的内部左边缘之间的距离在像素父容器和网格的左边缘。

之间的像素距离父容器的内底边缘和底部边缘的网格。

正确的

内心的右边缘之间的距离在像素父容器和网格的右边缘。

距离像素之间的内在的父容器的上部边缘和顶部边缘的网格。内顶级父容器的边缘开始下面的所有装饰品,如标题、标签标签,或菜单栏。

颜色

全部展开

背景颜色,作为一个RGB值,指定十六进制的颜色代码,或者颜色表中列出的选项之一。

RGB三胞胎和十六进制颜色代码可用于指定自定义颜色。

  • 一个RGB值三元素行向量的元素指定强度的红色,绿色和蓝色的组件的颜色。强度必须在范围内[0,1];例如,(0.4 0.6 0.7)

  • 十六进制颜色代码是一个特征向量或一个字符串标量,始于一个散列符号(#)后面跟着三个月或六个十六进制数字,它的范围可以从0F。的值是不区分大小写的。因此,颜色代码“# FF8800”,“# ff8800”,“# F80”,“# f80”是等价的。

或者,您可以指定一些常见颜色的名字。此表列出了命名颜色选项,相当于RGB三胞胎,十六进制颜色代码。

颜色名称 短名称 RGB值 十六进制颜色代码 外观
“红色” “r” (1 0 0) “# FF0000”

红色的示例

“绿色” ‘g’ (0 1 0) “# 00 ff00”

样品的颜色绿色

“蓝” “b” (0 0 1) “# 0000 ff”

样品的颜色蓝色

“青色” “c” (0 1 1) “# 00飞行符”

样品的颜色青色

“红色” “米” (1 0 1) “#就”

样品的颜色红色

“黄色” “y” (1 1 0) “# FFFF00”

样品的颜色黄色

“黑” “k” (0 0 0) # 000000的

样品的颜色黑色

“白色” ' w ' (1 1 1) “# FFFFFF”

样品的颜色白色

这是默认颜色的RGB三胞胎和十六进制颜色编码MATLAB®使用在许多类型的情节。

RGB值 十六进制颜色代码 外观
[0 0.4470 - 0.7410) “# 0072 bd”

样本的RGB值(0 0.4470 - 0.7410),显示为深蓝色

(0.8500 0.3250 0.0980) “# D95319”

样本的RGB值(0.8500 0.3250 0.0980),它表现为暗橙

(0.9290 0.6940 0.1250) “# EDB120”

样本的RGB值(0.9290 0.6940 0.1250),它表现为暗黄色

(0.4940 0.1840 0.5560) “# 7 e2f8e”

样本的RGB值(0.4940 0.1840 0.5560),它表现为深紫色

(0.4660 0.6740 0.1880) “# 77 ac30”

样本的RGB值(0.4660 0.6740 0.1880),它表现为中绿色

(0.3010 0.7450 0.9330) “# 4 dbeee”

样本的RGB值(0.3010 0.7450 0.9330),它表现为浅蓝色

(0.6350 0.0780 0.1840) “# A2142F”

样本的RGB值(0.6350 0.0780 0.1840),它表现为深红色

交互性

全部展开

可见性的孩子,指定为“上”“关闭”。或数字或逻辑1(真正的)或0()。的值“上”相当于真正的,“关闭”相当于。因此,您可以使用这个属性的值作为一个逻辑值。存储的值是作为一个开/关逻辑值的类型matlab.lang.OnOffSwitchState

将此属性设置为“关闭”隐藏所有子组件在网格和他们的后代。孩子们和他们的后代是隐藏的不管他们的价值可见属性。当组件隐藏,你可以获取和设置它们的属性,即使他们不出现在应用程序。

当你设定这个属性“上”,孩子们和他们的后代是可见的只有自己可见属性也将“上”

设置可见财产在不改变网格的值可见它的后代的属性。

滚动的能力,指定为“关闭”“上”或数字或逻辑1(真正的)或0()。的值“上”相当于真正的,“关闭”相当于。因此,您可以使用这个属性的值作为一个逻辑值。存储的值是作为一个开/关逻辑值的类型matlab.lang.OnOffSwitchState

将这个属性设置为“上”使滚动在网格内的布局管理器。为了滚动,这些条件也必须满足:

  • 为指定的值的总和“RowHeight”属性的网格布局管理器必须大于父容器的高度。

  • 为指定的值的总和“ColumnWidth”属性的网格布局管理器必须大于父容器的宽度。

  • 至少有一个行或列的网格布局管理器必须设置为一个固定的像素高度或宽度。

  • 网格布局管理器必须包含组件。

某些类型的图表和轴不支持滚动容器。万博1manbetx但是,您可以将图表或轴nonscrollable面板,然后将面板可滚动的容器。有关更多信息,请参见显示图形应用程序设计师

指定为一个上下文菜单快捷菜单对象。使用这个属性来显示一个上下文菜单,当你右键点击网格布局管理器。创建上下文菜单中使用uicontextmenu函数。

位置

全部展开

布局选项,指定为一个GridLayoutOptions对象。这个属性指定一个嵌套网格布局容器的选择。如果另一个网格的网格布局不是孩子布局容器(例如,它是一个孩子的图或面板),然后这个属性是空的,没有任何影响。然而,如果另一个网格布局的网格布局是一个孩子,你可以将那孩子网格所需的行和列的网格通过设置属性GridLayoutOptions对象。

例如,这段代码的巢穴grid2第三行第二列grid1

grid1 = uigridlayout (3 [4]);grid2 = uigridlayout (grid1);grid2.Layout。行= 3;grid2.Layout。列= 2;
让孩子一个网格跨越多个行或列的网格,指定房地产作为一个双元素向量。例如,这个命令grid2在列2通过3grid1:
grid2.Layout。列= [2 3];

回调

全部展开

对象创建函数,指定这些值之一:

  • 函数处理。

  • 细胞数组中第一个元素是一个函数处理。后续单元阵列中的元素传递给回调函数的参数。

  • 特征向量包含一个有效的MATLAB表达式(不推荐)。MATLAB计算表达式的基本工作空间。

更多信息关于指定一个回调函数处理,细胞数组,或字符向量,明白了回调程序设计师

这个属性指定一个回调函数执行时MATLAB创建对象。MATLAB之前执行初始化所有的属性值CreateFcn回调。如果你不指定CreateFcn属性,然后MATLAB执行默认创建函数。

设置CreateFcn属性在一个现有的组件没有影响。

如果指定这个属性作为处理函数或细胞数组,您可以访问的对象被创建使用回调函数的第一个参数。否则,使用gcbo函数来访问该对象。

对象删除函数,指定这些值之一:

  • 函数处理。

  • 细胞数组中第一个元素是一个函数处理。后续单元阵列中的元素传递给回调函数的参数。

  • 特征向量包含一个有效的MATLAB表达式(不推荐)。MATLAB计算表达式的基本工作空间。

更多信息关于指定一个回调函数处理,细胞数组,或字符向量,明白了回调程序设计师

这个属性指定一个回调函数执行时MATLAB删除对象。MATLAB执行DeleteFcn回调之前破坏对象的属性。如果你不指定DeleteFcn属性,然后MATLAB默认执行删除功能。

如果指定这个属性作为处理函数或细胞数组,您可以访问的对象被删除使用回调函数的第一个参数。否则,使用gcbo函数来访问该对象。

回调执行控制

全部展开

回调中断,指定为“上”“关闭”或数字或逻辑1(真正的)或0()。的值“上”相当于真正的,“关闭”相当于。因此,您可以使用这个属性的值作为一个逻辑值。存储的值是作为一个开/关逻辑值的类型matlab.lang.OnOffSwitchState

这个属性决定了如果一个回调可以运行中断。有两种回调状态考虑:

  • 运行回调是当前执行的回调。

  • 打断回调是一个回调,试图中断正在运行的回调。

MATLAB决定调中断行为每当它执行一个命令队列处理回调。这些命令包括drawnow,,uifigure,getframe,等待,暂停

如果调不包含运行这些命令,然后没有中断发生。MATLAB首先完成执行运行回调,后来执行中断的回调。

如果跑回调也包含其中的一个命令,然后可中断对象的属性拥有运行调决定如果中断发生时:

  • 如果该值的可中断“关闭”,然后没有中断发生。相反,BusyAction对象的属性拥有打断调决定如果打断回调被丢弃或添加到队列的回调。

  • 如果该值的可中断“上”,然后中断发生。下次MATLAB处理回调队列,它停止运行的执行回调并执行中断的回调。打断调完成后,MATLAB简历执行回调。

请注意

回调中断和执行不同的行为在这些情况下:

  • 如果中断的回调DeleteFcn,CloseRequestFcn,或SizeChangedFcn回调,那么无论发生中断可中断属性值。

  • 如果运行目前执行的回调等待函数,那么无论发生中断可中断属性值。

  • 如果回调是由一个中断计时器对象,然后根据时间表不管回调执行可中断属性值。

请注意

当一个中断发生,MATLAB不保存属性或状态的显示。例如,返回的对象gcagcf执行命令时可能会改变另一个回调。

回调排队,指定为“队列”“取消”。的BusyAction属性决定了MATLAB如何处理中断的执行回调。有两种回调状态考虑:

  • 运行回调是当前执行的回调。

  • 打断回调是一个回调,试图中断正在运行的回调。

BusyAction属性决定了回调排队行为只有满足这两个条件:

在这种情况下,BusyAction对象的属性拥有打断调决定MATLAB如何处理中断的回调。这些都是可能的值的BusyAction属性:

  • “队列”——将中断处理回调在一个队列跑回调结束后执行。

  • “取消”——不执行中断回调。

这个属性是只读的。

删除状态,作为一个开/关返回逻辑值的类型matlab.lang.OnOffSwitchState

MATLAB设置BeingDeleted财产“上”DeleteFcn回调函数开始执行。的BeingDeleted房地产仍将“上”直到组件对象已不复存在。

检查的价值BeingDeleted属性来验证对象不会被删除之前查询或修改它。

父/子

全部展开

指定为一个父容器对象创建使用uifigure函数,或者它的一个孩子容器:选项卡,面板,ButtonGroup,或GridLayout。如果没有指定容器,MATLAB调用uifigure创建一个新的函数对象作为父容器。

孩子,作为一个UI组件对象数组返回。使用这个属性来查看列表或重新排序孩子通过设置属性的排列。你不能使用这个属性添加或删除的孩子。添加一个孩子这个列表,设置孩子UI组件的属性。

重新排序的孩子没有影响网格中的组件的位置。改变一个组件在网格的位置,设置它布局财产。

指定为对象的可见性处理“上”,“回调”,或“关闭”

这个属性控制对象的可见性在其父母的孩子。当一个对象不可见的父母的孩子,它不是由函数返回获取对象通过搜索对象层次结构或查询属性。这些功能包括得到,findobj,clf,关闭。对象是有效的,即使他们是不可见的。如果您可以访问一个对象,你可以设置它的属性,并将其传递给任何函数来操作对象。

HandleVisibility价值 描述
“上” 对象总是可见的。
“回调” 对象是可见的在回调函数或函数调用回调,但不是在从命令行调用的函数。这个选项块访问对象的命令行,但是允许回调函数来访问它。
“关闭” 对象是无形的。这个选项是有用的防止意外更改UI被另一个函数。设置HandleVisibility“关闭”暂时隐藏对象在这个函数的执行。

标识符

全部展开

这个属性是只读的。

类型的图形对象,返回“uigridlayout”

对象标识符指定为一个特征向量或字符串标量。您可以指定一个唯一的标签价值作为一个对象的标识符。当你需要访问对象在您的代码,您可以使用findobj基于函数搜索对象标签价值。

用户数据,指定为任何MATLAB数组。例如,您可以指定一个标量、向量,矩阵,单元阵列,字符数组,表,或者结构。使用这个属性来存储任意数据对象。

如果你是在应用程序设计师工作,创建公共或私有属性的应用程序共享数据,而不是使用用户数据财产。有关更多信息,请参见在应用程序设计应用程序共享数据

版本历史

介绍了R2018b