uipushtool
在工具栏中创建按钮工具
说明
在当前图窗的工具栏中创建一个按钮工具,并返回 pt
= uipushtoolPushTool
对象。
当前图窗必须是使用 figure
函数创建的图窗。如果当前图窗没有子工具栏,则 MATLAB® 会在当前图窗中创建一个工具栏作为父级。如果用 figure
函数创建的图窗不存在,则 MATLAB 会创建一个图窗,并调用 uitoolbar
函数来创建一个工具栏作为父级。
按钮工具的行为就像普通按钮。当您点击它们时,它们显示为已按下,直到您松开鼠标按键。
创建一个按钮工具,其中包含使用一个或多个名称-值对组参量指定的属性值。用上述任一语法指定名称-值对组。pt
= uipushtool(___,Name,Value
)
示例
在 UI 图窗工具栏中创建按钮工具
通过调用 uifigure
函数创建一个 UI 图窗。在 UI 图窗中创建一个工具栏。
fig = uifigure; tb = uitoolbar(fig);
向该工具栏添加一个按钮工具。按钮工具显示默认图标。
pt = uipushtool(tb);
通过将 Icon
属性值设置为图像文件 greencircleicon.gif
,为按钮工具添加一个图标。
pt.Icon = fullfile(matlabroot,'toolbox','matlab','icons','greencircleicon.gif');
在新图窗工具栏中创建按钮工具
通过调用 figure
函数来创建一个图窗。向图窗添加一个工具栏。它出现在默认图窗工具栏下方。
f = figure; tb = uitoolbar(f);
在工具栏中创建一个按钮工具。从索引图像文件 matlabicon.gif
中读取一个新图标。将索引图像转换为 RGB 真彩色图像数组。通过将 CData
属性设置为真彩色图像数组,为按钮工具添加图标。
pt = uipushtool(tb); [img,map] = imread(fullfile(matlabroot,... 'toolbox','matlab','icons','matlabicon.gif')); ptImage = ind2rgb(img,map); pt.CData = ptImage;
在默认图窗工具栏中创建按钮工具
通过向默认图窗工具栏添加一个按钮工具来修改默认图窗工具栏。
通过调用 figure
函数来创建一个图窗。
f = figure;
通过查找图窗中 'uitoolbar'
类型的所有对象来获取默认工具栏的句柄。
defaultToolbar = findall(f,'Type','uitoolbar')
defaultToolbar = Toolbar (FigureToolBar) with properties: Children: [0×0 GraphicsPlaceholder]
在默认工具栏中创建一个按钮工具。创建一个由随机 RGB 值组成的 16×16×3 数组作为其图标。通过将 CData
属性设置为此数组,为按钮工具添加图标。
pt = uipushtool(defaultToolbar); ptImage = rand(16,16,3); pt.CData = ptImage;
在 UI 图窗工具栏中创建颜色选择器按钮工具
创建一个按钮工具,当您点击它时,它将打开 uisetcolor
对话框。将 UI 图窗的背景颜色更改为从颜色选择器中选择的颜色。
首先,创建一个名为 colorPickerPushTool.m
的程序文件。在该程序文件中:
创建一个 UI 图窗。
在 UI 图窗中创建一个工具栏。
在工具栏中创建一个按钮工具。
通过将
Icon
属性值设置为paintbrush.gif
的完整文件路径,为按钮工具添加一个适当的图标。为按钮工具创建一个工具提示。
将
ClickedCallback
属性设置为引用名为colorToolClicked
的回调函数的函数句柄。创建一个名为
colorToolClicked
的回调函数。在其中调用uisetcolor
函数,这样当您点击工具栏中的按钮工具时,会打开颜色选择器对话框。将颜色选择器的默认颜色设置为 UI 图窗的颜色,并将颜色选择器的标题指定为'Select UI Figure Color'
。使 UI 图窗成为当前图窗,以便它显示在所有其他图窗的前端。
function colorPickerPushTool fig = uifigure('Position',[350 500 400 300]); tb = uitoolbar(fig); pt = uipushtool(tb); pt.Icon = fullfile(matlabroot,'toolbox','matlab','icons','paintbrush.gif'); pt.Tooltip = 'Change UI Figure Color'; pt.ClickedCallback = @colorToolClicked; function colorToolClicked(src,event) c = uisetcolor(fig,'Select UI Figure Color'); figure(fig) end end
运行 colorPickerPushTool
。点击按钮工具打开颜色选择器。然后,选择一种颜色来更改 UI 图窗的背景颜色。
colorPickerPushTool
输入参数
parent
— 父工具栏
Toolbar
对象
父工具栏,指定为 Toolbar
对象。使用此属性可在创建按钮工具时指定父工具栏,或将现有工具移动到其他工具栏上。
如果未指定父工具栏,则 MATLAB 会在当前图窗的工具栏中创建一个按钮工具。当前图窗必须是使用 figure
函数创建的图窗。如果当前图窗没有子工具栏,则 MATLAB 会在当前图窗中创建一个作为父级。MATLAB 不会在默认图窗工具栏中创建按钮工具。
如果用 figure
函数创建的图窗不存在,则 MATLAB 会创建一个图窗,并调用 uitoolbar
函数创建一个工具栏作为父级。
如果向工具栏添加多个按钮工具或切换工具,它们将按照创建的顺序从左到右添加。
名称-值参数
将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN
,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: 'Separator','on'
将分隔线模式设置为 'on'
。
注意
此处所列的属性只是一部分。有关完整列表,请参阅 PushTool 属性。
Icon
— 图标源或文件
''
(默认) | 字符向量 | 字符串标量 | m
×n
×3 真彩色图像数组
图标源或文件,指定为字符向量、字符串标量或 m
×n
×3 真彩色图像数组。如果指定字符向量或字符串标量,它可以是 MATLAB 路径中的图像文件名或图像文件的完整路径。如果您计划与他人共享您的 App,请将图像文件放在 MATLAB 路径中以便于打包 App。支持的图像格式包括 JPEG、PNG、GIF 和 SVG。
如果指定 m
×n
×3 数组,它将解释为真彩色图像数组。有关真彩色图像数组的详细信息,请参阅在 MATLAB 中使用图像类型。
如果您指定的图像大于 16×16 像素,则 Icon
属性会缩小图像,使整个图像适应该工具。如果您指定的图像小于 16×16 像素,则不会放大图像来适应可用空间。
Icon
属性仅在使用 App 设计工具创建的 App 和基于 uifigure
的 App 中受支持。如果同时设置了 Icon
和 CData
属性,则忽略 CData
属性。
示例: 'icon.png'
指定 MATLAB 路径中的一个图像文件。
示例: 'C:\Documents\icon.png'
指定图像文件的完整路径。
CData
— 图像数组
[]
(默认) | m
×n
×3 真彩色图像数组
图像数组,指定为 m
×n
×3 真彩色图像数组。数组中的值可以是:
介于
0.0
和1.0
之间的双精度值介于
0
和255
之间的uint8
值
为防止图像出现裁剪或失真,请指定 m
和 n
小于或等于 16 的数组。如果图像被裁剪,则仅使用数组的中心 16×16 部分。
注意
对于使用 App 设计工具创建的 App 和基于 uifigure
的 App,请改用 Icon
属性来指定按钮工具和切换工具图标。
Separator
— 分隔线模式
'off'
(默认) | on/off 逻辑值
分隔线模式,指定为 'off'
或 'on'
,或者指定为数值或逻辑值 0
(false
) 或 1
(true
)。值 'on'
等效于 true
,'off'
等效于 false
。因此,您可以使用此属性的值作为逻辑值。该值存储为 matlab.lang.OnOffSwitchState
类型的 on/off 逻辑值。
将此属性设置为 'on'
将在工具栏上的工具左侧绘制一条分隔线。
提示
在
WindowStyle
属性设置为'modal'
的图窗中,Toolbar
对象(及其子级PushTool
和ToggleTool
对象)不显示。如果一个含有工具栏子对象的图窗的WindowStyle
更改为'modal'
,则该工具栏子对象仍然存在于图窗的Children
属性中。但是,在WindowStyle
设置为'modal'
时,工具栏不会出现。与
UIControl
普通按钮不同,在第二次点击时,按钮工具不会将图窗的SelectionType
属性设置为'open'
。
版本历史记录
在 R2006a 之前推出R2020b: 指定自定义图标
在 App 设计工具中创建的和使用 uifigure
函数的 App 中,要将自定义图标添加到按钮工具,请设置 Icon
属性。您可以将 Icon
属性指定为图像文件或 m
×n
×3 真彩色数组。
推荐使用 Icon
属性,而不是 CData
属性。
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)