目录
语法
说明
示例
创建普通按钮
创建状态按钮
设置和访问按钮属性值
编写响应以下操作的代码:点击按钮
uibutton函数的功能是创建普通按钮或状态按钮组件。
语法
btn = uibutton
btn = uibutton(parent)
btn = uibutton(style)
btn = uibutton(parent,style)
btn = uibutton(___,Name,Value)
说明
btn = uibutton 在新图窗中创建一个普通按钮,并返回 Button 对象。MATLAB® 调用 uifigure 函数来创建该图窗。
btn = uibutton(parent) 在指定的父容器中创建一个按钮。父容器可以是使用 uifigure 函数创建的图窗或其子容器之一。
btn = uibutton(style) 创建指定样式的按钮。按钮样式可以是 "push" 或 "state"。
btn = uibutton(parent,style) 在指定的父容器中创建指定样式的按钮。
btn = uibutton(___,Name,Value) 创建一个按钮,其属性由一个或多个名称-值参数指定。例如,使用 BackgroundColor 属性指定按钮背景颜色。可将此选项与上述语法中的任何输入参数组合一起使用。
示例
创建普通按钮
在 UI 图窗中创建一个普通按钮。
fig = uifigure;
b = uibutton(fig);
如图所示:
创建状态按钮
在 UI 图窗中创建一个状态按钮。
fig = uifigure;
b = uibutton(fig,"state");
如图所示:
点击该按钮。点击该按钮后,它将保持按下状态。如图所示:
设置和访问按钮属性值
在 UI 图窗中创建一个状态按钮,并通过指定属性值来自定义其外观。
fig = uifigure;
b = uibutton(fig,"state", ...
"Text","Play", ...
"Icon","play.png", ...
"IconAlignment","top", ...
"Position",[100 100 50 50]);
如图所示:
确定该状态按钮是否处于按下状态。
b.Value
ans = logical
0
以编程方式更新按钮值,使其以按下状态出现。
b.Value = true;
如图所示:
编写响应以下操作的代码:点击按钮
创建一个 App,当 App 用户按下按钮时,它会绘制一些数据。
在名为 plotApp.m 的文件中,编写实现该 App 的函数:
-
创建一个 UI 图窗和一个网格布局管理器,以对该 App 进行布局。
-
在网格布局管理器中创建 UI 坐标区和一个按钮。
-
编写名为 plotButtonPushed 的回调函数,该函数在 UI 坐标区中绘制一些数据,并将该函数赋给 ButtonPushedFcn 回调属性。
Programmatically。
function plotApp
fig = uifigure;
g = uigridlayout(fig,[2 3]);
g.RowHeight = {'1x','fit'};
g.ColumnWidth = {'1x','fit','1x'};
ax = uiaxes(g);
ax.Layout.Row = 1;
ax.Layout.Column = [1 3];
b = uibutton(g, ...
"Text","Plot Data", ...
"ButtonPushedFcn", @(src,event) plotButtonPushed(ax));
b.Layout.Row = 2;
b.Layout.Column = 2;
end
function plotButtonPushed(ax)
x = linspace(0,2*pi,100);
y = sin(x);
plot(ax,x,y)
end
运行 plotApp 函数。点击按钮以绘制数据。如图所示:
参数说明
style — 按钮的样式
按钮的样式,指定为以下值之一:
-
"push" - 点击一次,按钮将被按下并释放。
-
"state" - 点击一次,按钮将保持按下或释放状态,直到再次点击为止。
parent — 父容器
父容器,指定为使用 uifigure 函数创建的 Figure 对象或其子容器之一:Tab、Panel、ButtonGroup 或 GridLayout。如果不指定父容器,MATLAB 会调用 uifigure 函数创建新 Figure 对象充当父容器。