主要内容

使用网格布局管理器

网格布局管理器提供了一种布局应用程序的方法,而无需设置UI组件的像素位置位置向量。对于可调整大小的应用程序,网格布局管理器提供了比App Designer中自动调整大小行为更大的灵活性。它们的配置也比编码更容易SizeChangedFcn回调函数。

添加和配置网格布局管理器

在App Designer中,您可以将网格布局管理器添加到空白应用程序或图中的空容器组件。

要使用网格布局管理器,请从中拖动网格布局组件库到画布上。或者,您可以右键单击图形或容器并选择应用网格布局从上下文菜单中。网格布局管理器跨越您将其放入的整个应用程序窗口或容器。除非您在App Designer Canvas上积极配置它,否则它是不可见的。

要配置网格布局管理器,请在设计视图,通过单击添加网格布局的区域将其聚焦。然后,选择从网格布局管理器的左上角按钮,或右键单击网格布局并选择配置网格布局.然后,选择一行或列,从中选择一列或列调整配置大小菜单,指定适合加权, 或者固定.有关这些选项的更多信息,请参见gridlayout属性.您还可以添加或删除行和列。

将基于像素的位置转换为网格布局管理器的组件

您还可以将UI数字或容器中的组件从基于像素的定位转换为网格布局管理器。当您将网格布局管理器应用于其中具有组件的UI数字或容器时,组件将添加到网格布局管理器及其位置vectors被替换为布局layout.column.指定网格中位置的值。组件层次结构也更新组件浏览器

网格布局管理器支持不同的属性而不是其他容器金宝app组件。在某些情况下,如果它设置了这些类型的属性,或者它设置了由网格布局管理时不可用的组件属性,您可能需要更新您的回调代码。如果您的回调或其他行为不按预期工作,则查找此表中的代码模式。

症状或警告 解释 建议的行动
警告:无法为“gridlayout”中的组件设置“位置”,“InnerPosition”或“OuthorPosition”。 你无法设置位置网格布局管理器中的组件属性。 通过设置来指定组件的网格位置布局房地产以适当的价值观。
使用matlab.ui.container.gridLayout / Set出错
GridLayout类上没有FontSize属性。
网格布局管理器上可能不支持您在其他容器组件上设置的属性。金宝app 更新代码,以便它在预期容器上设置属性。
分配给容器的上下文菜单在运行应用程序中不打开。 当您向容器添加网格布局管理器时,它将跨越整个容器。这意味着单击事件发生在网格上,而不是容器上。 将上下文菜单重新分配给网格布局。

示例:将组件转换为使用网格布局管理器而不是基于像素的位置

此应用程序显示如何将网格布局管理器应用于已在其中具有组件的应用程序的图形。它还显示了如何配置网格布局管理器,以便行和列自动调整以适应基于文本组件的大小的变化。

  1. 在App Designer中打开应用程序。在设计视图,将网格布局管理器拖到图中。

  2. 右键单击刚刚添加到图形的网格布局管理器并选择配置网格布局从上下文菜单中。

  3. 逐一,选择包含下拉菜单和表的网格的行和列,并更改其调整大小配置适合.完成后,验证是否在检查员选项卡组件浏览器, 这列宽价值是12.64x,1.89x,配合,配合,配合,适合RowHeight价值是1 x,健康,1.93 x,健康,3.07 x,健康

  4. 切换到代码视图.更新每个DropDownValueChanged回调呢?allchild函数设置组件上的字体名称和字体大小app.gridlayout.,而不是在app.uifigure.

  5. 现在运行应用程序,看看网格如何调整以适应组件的大小变化。

也可以看看

职能

特性