主要内容

uifigure

为设计应用程序创建图形

描述

例子

无花果= uifigure创建用于构建用户界面的图形,并返回数字对象。这是App Designer使用的图形类型。

例子

无花果= uifigure (名称,值使用一个或多个指定图形属性名称,值对参数。

例子

全部折叠

无花果= uifigure;

空白的UI图形窗口。

创建一个具有特定标题的UI图形。

无花果= uifigure (“名字”“策划的结果”);

用户界面图窗口。窗口顶部的标题是标绘结果。

获取图形的位置、宽度和高度。

p = fig.Position
Ans = 680 678 560 420

创建一个默认的UI图。

无花果= uifigure;

空白的UI图形窗口。

获取图形的位置、宽度和高度。

fig.Position
Ans = 681 559 560 420

这意味着图形窗口位于主显示器的右侧681像素,位于左下角上方559像素,宽560像素,高420像素。

通过调整位置向量的第三和第四个元素将图形的宽度和高度减半。

fig.Position(3:4) = [280 210];

空白的UI图形窗口。窗口的高度是默认窗口的一半,宽度是默认窗口的一半。

创建两个UI图形窗口。通过指定来阻止图1中的交互“模态”随着WindowStyle属性值如图2所示。注意,在关闭图2之前,您不能与图1交互。

图一= uifigure (“名字”“图1”);图一:Position = [500 500 370 270];图= uifigure (“名字”“图2”);图二:Position = [540 450 370 270];图二:WindowStyle =“模态”

代码CloseRequestFcn当用户试图关闭窗口时,回调以打开模态确认对话框。

复制并粘贴此代码到MATLAB中®编辑器,然后运行closeFig

函数图= ufigure (“位置”,[100 100 425 275]);事件fig.CloseRequestFcn = @ (src) my_closereq (src);函数my_closeeq (fig) select = uiconfirm(fig,“关上数字窗口?”...“确认”);开关选择情况下“好吧”删除(图)情况下“取消”返回结束结束结束

点击图形关闭按钮。打开确认对话框。

确认对话框。对话框说关闭数字窗口?旁边有一个问号图标。在底部有OK和Cancel按钮。

当您将鼠标悬停在按钮上时,更改显示的鼠标指针符号。

这个程序文件,叫做setMousePointer.m,向您展示如何:

  • 创建一个UI图形,当鼠标移动到按钮上时执行自定义代码。要做到这一点,使用运算符来分配mouseMoved函数句柄WindowButtonMotionFcn图形的属性。

  • 创建一个按钮并指定它的坐标和标签。

  • 创建被调用的回调函数mouseMoved使用您想在鼠标移动到按钮上时执行的自定义代码。函数中,查询CurrentPoint属性以确定鼠标指针坐标。设置指针财产“手”如果指针坐标在按钮坐标内。

运行setMousePointer.然后将鼠标移动到按钮上,可以看到鼠标指针符号从箭头变为手。

函数setMousePointer图= uiffigure (“位置”,[500 500 375 275]);fig.WindowButtonMotionFcn = @mouseMoved;btn = uibutton(图);btnX = 50;btnY = 50;btnWidth = 100;btnHeight = 22;btn。Position = [btnX btnny btnWidth btnHeight];btn。Text =提交更改的函数鼠标移动到(src,事件)mousePos = fig.CurrentPoint;如果(mousePos(1) = btnX) && (mousePos(1) <= btnX + btnWidth)...&& (mousePos(2) >= btnY) && (mousePos(2) <= btnY + btnHeight“手”其他的fig.Pointer =“箭头”结束结束结束

带有“提交更改”按钮的图形窗口。鼠标指针位于按钮上方,呈手的形状。

输入参数

全部折叠

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“名称”,“我的应用”指定我的程序作为UI图形的标题。

这里列出的属性是可用属性的子集。有关完整列表,请参见用户界面图属性

窗口样式,指定为下列样式之一:

  • “正常”—图形窗口独立于其他窗口,在图形显示时可以访问其他窗口。

  • “模态”-图形显示在所有现有图形窗口的顶部与普通窗口风格,使他们不可访问,只要顶部图形存在,并保持模态。然而,在模态图形之后创建的任何新图形都会显示。

    当存在多个模态窗口时,最近创建的窗口将保持焦点,并保持在所有其他窗口之上,直到它变得不可见,或返回正常的窗口样式,或被删除。此时,焦点恢复到上次有焦点的窗口。

  • “alwaysontop”-图形显示在所有其他窗口的顶部,包括模态图形窗口和非matlab应用程序的窗口。其他的窗户还可以进去。

请注意

这些是一些重要的特征WindowStyle属性和一些推荐的最佳做法:

  • 当您创建UI窗口时,总是指定WindowStyle财产。如果您还想设置调整位置属性,然后设置WindowStyle财产。

  • 你可以改变WindowStyle属性,包括当图形可见并包含子图形时。然而,在某些系统上,设置此属性可能会导致图形闪烁或消失和重新出现,这取决于系统对正常窗口和模态窗口的实现。要获得最佳的视觉效果,请设置WindowStyle属性在创建时或图形不可见时。

UI图形模态窗口样式行为

WindowStyle被设置为“模态”, UI图形窗口阻塞了在它之前创建的UI图形窗口中的键盘和鼠标交互可见属性设置为“上”.例如,在这个示例中,图3是相对于图2的模态,图2是相对于图1的模态。

图一= uifigure (“名字”“图1”);图一:WindowStyle =“模态”;图= uifigure (“名字”“图2”);图二:WindowStyle =“模态”;如果= uifigure (“名字”图3的);图三:WindowStyle =“模态”
如果在图形层次中存在模态图形和正常图形的组合,则不保留模态层次。

不像模态图形创建与数字函数创建的模态图形uifigure函数不会阻止访问使用图形函数或MATLAB桌面创建的图形。与MATLAB以外的应用程序窗口的交互也不会被阻塞。

打字Ctrl + C当模态图形有焦点时,使该图形恢复为“正常”WindowStyle属性设置。这允许用户在命令行输入。

的UI图形WindowStyle属性设置为“模态”可见属性设置为“关闭”在MATLAB使它们可见之前,不表现模态。因此,您可以隐藏模态窗口以便以后重用,而不是销毁它。

模态图形不显示菜单子菜单、内置菜单或工具栏。但是,在模态图中创建菜单或更改WindowStyle属性设置为“模态”在一个有菜单子的图形上。的菜单对象存在,图形保留它们。如果重置了UI图WindowStyle财产“正常”,菜单显示。

图形的名称,指定为字符向量或字符串标量。

例子:uifigure(“名字”,“结果”)将图形的名称设置为“结果”

在App Designer中,的名字属性是MATLAB应用程序的

UI图形的位置和大小(不包括边框和标题栏),指定为表单的四个元素向量[左下角宽度高度]

该表描述了向量中的每个元素。

元素 描述
主显示的左边缘到UI图形窗口的左内边缘的距离。在具有多个监视器的系统上,该值可能为负值。
主显示器的底部边缘到UI图形窗口的内部底部边缘的距离。在具有多个监视器的系统上,该值可能为负值。
宽度 UI图形左右内边缘之间的距离。
高度 UI图形的顶部和底部内缘之间的距离。

限制

  • 目前,你不能通过考试数字对象创建的uifigure函数打印函数。如果您尝试这样做,MATLAB会抛出一个错误。有关更多信息,请参见在App Designer中显示图形

提示

  • 使用图形根对象为其他类型的对象设置根级别上的默认值。例如,将所有未来图形的默认颜色映射设置为夏天colormap。

    集(大的,“DefaultFigureColormap”夏天)
    要将属性恢复到其初始MATLAB默认值,请使用“删除”关键字。
    集(大的,“DefaultFigureColormap”“删除”
    有关设置默认值的更多信息,请参见默认的属性值

介绍了R2016a