Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

uibuttongroup

创建用于管理单选按钮和切换按钮的按钮组

说明

bg = uibuttongroup 在当前图窗中创建一个按钮组,并返回 ButtonGroup 对象。如果没有可用的图窗,MATLAB® 将调用 figure 函数创建一个图窗。

示例

bg = uibuttongroup(Name,Value) 使用一个或多个名称-值对组参数指定按钮组属性值。

bg = uibuttongroup(parent) 在指定的父容器中创建该按钮组。父容器可以是使用 figureuifigure 函数创建的图窗,也可以是子容器(如面板)。uibuttongroup 的属性值略有不同,具体取决于该 App 是使用 figure 还是 uifigure 函数创建的。有关详细信息,请参阅名称-值对组参数

示例

bg = uibuttongroup(parent,Name,Value) 指定父容器和一个或多个属性值。

示例

全部折叠

当用户从按钮组中选择一个不同单选按钮时,在 MATLAB 命令行窗口中显示上一次的按钮选择和当前的按钮选择。

复制此代码并将其粘贴到编辑器中,然后运行它以查看它的工作方式。

function myui
bg = uibuttongroup('Visible','off',...
                  'Position',[0 0 .2 1],...
                  'SelectionChangedFcn',@bselection);
              
% Create three radio buttons in the button group.
r1 = uicontrol(bg,'Style',...
                  'radiobutton',...
                  'String','Option 1',...
                  'Position',[10 350 100 30],...
                  'HandleVisibility','off');
              
r2 = uicontrol(bg,'Style','radiobutton',...
                  'String','Option 2',...
                  'Position',[10 250 100 30],...
                  'HandleVisibility','off');

r3 = uicontrol(bg,'Style','radiobutton',...
                  'String','Option 3',...
                  'Position',[10 150 100 30],...
                  'HandleVisibility','off');
              
% Make the uibuttongroup visible after creating child objects. 
bg.Visible = 'on';

    function bselection(source,event)
       disp(['Previous: ' event.OldValue.String]);
       disp(['Current: ' event.NewValue.String]);
       disp('------------------');
    end
end

bselection 函数显示 eventOldValueNewValue 属性。

Scrollable 属性支持在按钮组内的组件超出边框时启用滚动。仅当按钮组位于使用 uifigure 函数创建的图窗中时,才可以滚动。App 设计工具使用此类型的图窗来创建 App。

在图窗中创建按钮组。添加六个切换按钮,前三个按钮位于按钮组的上边框之外。

fig = uifigure;
bg = uibuttongroup(fig,'Position',[20 20 196 135]);
tb1 = uitogglebutton(bg,'Position',[11 165 140 22],'Text','One');
tb2 = uitogglebutton(bg,'Position',[11 140 140 22],'Text','Two');
tb3 = uitogglebutton(bg,'Position',[11 115 140 22],'Text','Three');
tb4 = uitogglebutton(bg,'Position',[11 90 140 22],'Text','Four');
tb5 = uitogglebutton(bg,'Position',[11 65 140 22],'Text','Five');
tb6 = uitogglebutton(bg,'Position',[11 40 140 22],'Text','Six');

通过将按钮组的 Scrollable 属性设置为 'on' 来启用滚动。默认情况下,滚动框显示在顶部。

bg.Scrollable = 'on';

输入参数

全部折叠

父容器,指定为使用 figureuifigure 函数创建的图窗或子容器:

  • 面板、选项卡和按钮组可以是任一类型的图窗中的容器。

  • 网格布局是只能位于使用 uifigure 函数创建的图窗中的容器。

名称-值对组参数

示例: 'Title','Options' 指定按钮组标题为 Options

指定可选的、以逗号分隔的 Name,Value 对组参数。Name 为参数名称,Value 为对应的值。Name 必须放在单引号 (' ') 中。您可以指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN

  • 有关对通过 uifigure 函数或 App 设计工具创建的 App 可用的属性列表,请参阅 ButtonGroup 属性

  • 有关对通过 figure 函数创建的 App 可用的属性列表,请参阅 ButtonGroup 属性

提示

  • 按钮组可包含任何 UI 组件类型,但只能管理单选按钮和切换按钮的选择。

  • 要使您的程序在 App 用户选择按钮组中的单选按钮或切换按钮时做出响应,请为按钮组定义一个 SelectionChangedFcn 回调函数。不能定义对单个按钮的回调。

  • 要确定当前选择了哪个单选按钮或切换按钮,请查询按钮组的 SelectedObject 属性。可以在代码中的任何位置执行此查询。

  • 如果将按钮组对象的 Visible 属性设置为 'off',该对象包含的任何子对象(按钮、其他按钮组等)都将与父按钮组一起变得不可见。但是,每个子对象的 Visible 属性值不受影响。

在 R2006a 之前推出