uipushtool

Создайте инструмент нажатия на панели инструментов

Описание

pt = uipushtool создает инструмент нажатия на панели инструментов текущей фигуры и возвращает PushTool объект.

Текущая фигура должна быть той, созданной с figure функция. Если текущая фигура не имеет дочерней панели инструментов, то MATLAB® создает один в текущей фигуре, чтобы служить родительским элементом. Если фигура, созданная с figure функция не существует, затем MATLAB создает один и вызывает uitoolbar функция, чтобы создать панель инструментов, чтобы служить родительским элементом.

Инструменты нажатия ведут себя как кнопки. Когда вы кликаете по ним, они, кажется, снижают, пока вы не отпускаете кнопку мыши.

пример

pt = uipushtool(parent) создает инструмент нажатия на заданной родительской панели инструментов.

пример

pt = uipushtool(___,Name,Value) создает инструмент нажатия со значениями свойств, заданными с помощью одного или нескольких аргументов пары "имя-значение". Задайте пары "имя-значение" с любым из предыдущих синтаксисов.

Примеры

свернуть все

Создайте фигуру пользовательского интерфейса путем вызова uifigure функция. Создайте панель инструментов на фигуре пользовательского интерфейса.

fig = uifigure;
tb = uitoolbar(fig);

UI figure with an empty toolbar.

Добавьте инструмент нажатия в панель инструментов. Инструмент нажатия отображает значок по умолчанию.

pt = uipushtool(tb);

UI figure that displays a toolbar and a push tool with the default icon.

Добавьте значок в инструмент нажатия путем установки Icon значение свойства к файлу изображения greencircleicon.gif.

pt.Icon = fullfile(matlabroot,'toolbox','matlab','icons','greencircleicon.gif');

UI figure that displays a toolbar and a push tool with a green circle icon.

Создайте фигуру путем вызова figure функция. Добавьте панель инструментов на фигуру. Это появляется ниже панели инструментов фигуры по умолчанию.

f = figure;
tb = uitoolbar(f);

Figure that displays the default toolbar and another empty toolbar below it.

Создайте инструмент нажатия на панели инструментов. Считайте новый значок из индексируемого файла изображения, 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 that displays the default toolbar and another toolbar below it that contains a push tool with the MathWorks logo.

Измените панель инструментов фигуры по умолчанию путем добавления инструмента нажатия в него.

Создайте фигуру путем вызова figure функция.

f = figure;

Figure with the default toolbar.

Получите указатель на панель инструментов по умолчанию путем нахождения всех объектов типа 'uitoolbar' это находится на рисунке.

defaultToolbar = findall(f,'Type','uitoolbar')
defaultToolbar = 

  Toolbar (FigureToolBar) with properties:

    Children: [0×0 GraphicsPlaceholder]

Создайте инструмент нажатия на панели инструментов по умолчанию. Создайте 16 16 3 массивами случайных значений RGB, чтобы быть его значком. Добавьте значок в инструмент нажатия путем установки CData свойство к этому массиву.

pt = uipushtool(defaultToolbar);
ptImage = rand(16,16,3);
pt.CData = ptImage;

Figure with a custom push tool added as the right-most icon in the default toolbar.

Создайте инструмент нажатия, который открывается uisetcolor диалоговое окно, когда вы кликаете по нему. Измените цвет фона фигуры пользовательского интерфейса к цвету, выбранному из палитры цветов.

Во-первых, создайте программный файл под названием colorPickerPushTool.m. В программном файле:

  • Создайте фигуру пользовательского интерфейса.

  • Создайте панель инструментов на фигуре пользовательского интерфейса.

  • Создайте инструмент нажатия на панели инструментов.

  • Добавьте соответствующий значок в инструмент нажатия путем установки Icon значение свойства к полному пути к файлу к paintbrush.gif.

  • Создайте подсказку для инструмента нажатия.

  • Установите ClickedCallback свойство к указателю на функцию, который ссылается на функцию обратного вызова под названием colorToolClicked.

  • Создайте функцию обратного вызова под названием colorToolClicked. В нем вызовите uisetcolor функционируйте так, чтобы диалоговое окно палитры цветов открылось, когда вы кликаете по инструменту нажатия на панели инструментов. Выберите цвет по умолчанию палитры цветов, чтобы быть цветом фигуры пользовательского интерфейса и задать заголовок палитры цветов как 'Select UI Figure Color'. Сделайте фигуру пользовательского интерфейса текущей фигурой так, чтобы это отобразилось сверху всех других фигур.

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. Кликните по инструменту нажатия, чтобы открыть палитру цветов. Затем выберите цвет, чтобы изменить цвет фона фигуры пользовательского интерфейса.

colorPickerPushTool

UI figure that displays a paintbrush icon in a toolbar push tool. The color picker dialog box displays to the right of the UI figure.

Входные параметры

свернуть все

Родительская панель инструментов в виде Toolbar объект. Используйте это свойство задать родительскую панель инструментов при создании инструмента нажатия или переместить существующий инструмент в различную панель инструментов.

Если родительская панель инструментов не задана, то MATLAB создает инструмент нажатия на панели инструментов текущей фигуры. Текущая фигура должна быть той, созданной с figure функция. Если текущая фигура не имеет дочерней панели инструментов, то MATLAB создает один в текущей фигуре, чтобы служить родительским элементом. MATLAB не создает инструмент нажатия на панели инструментов фигуры по умолчанию.

Если фигура, созданная с figure функция не существует, затем MATLAB создает один и вызывает uitoolbar функция, чтобы создать панель инструментов, которая служит родительским элементом.

Если вы добавляете несколько инструментов нажатия или инструментов переключателя на панель инструментов, они добавляются слева направо в порядке, что они создаются.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Separator','on' устанавливает режим линии диафрагмы на 'on'.

Примечание

Перечисленные здесь свойства являются только подмножеством. Для полного списка смотрите PushTool Properties.

Источник значка или файл в виде вектора символов, строкового скаляра или m- n- 3 матрицы изображений истинного цвета. Если вы задаете вектор символов или строковый скаляр, это может быть имя файла образа на пути MATLAB или полном пути к файлу изображения. Если вы планируете совместно использовать свое приложение с другими, поместите файл изображения на путь MATLAB, чтобы упростить упаковку приложения. Поддерживаемые форматы изображения включают JPEG, PNG, GIF и SVG.

Если вы задаете m- n- 3 массива, это интерпретировано как матрица изображений истинного цвета. Для получения дополнительной информации о матрицах изображений истинного цвета, смотрите Типы изображения.

Если изображение, которое вы задаете, больше, чем 16 16 пиксели, то Icon свойство уменьшает масштаб изображения так, чтобы целое изображение соответствовало в инструменте. Если изображение, которое вы задаете, меньше, чем 16 16 пиксели, оно не увеличено, чтобы соответствовать свободному месту.

Icon свойство поддерживается только в App Designer и uifigure- основанные приложения. Если Icon и CData свойства оба установлены, затем CData свойство проигнорировано.

Пример: 'icon.png' задает файл изображения на пути MATLAB.

Пример: 'C:\Documents\icon.png' задает полный путь к файлу изображения.

Матрица изображений в виде m- n- 3 матрицы изображений истинного цвета. Значения в массиве могут быть:

  • Значения с двойной точностью между 0.0 и 1.0

  • uint8 значения между 0 и 255

Чтобы препятствовать тому, чтобы изображение казалось отсеченным или искаженным, задайте массив с m и n меньше чем или равный 16. Если изображение отсекается, то только центр 16 16 часть массива используется.

Примечание

Для App Designer и uifigure- основанные приложения, используйте Icon свойство задать нажатие и значки инструмента переключателя вместо этого.

Режим линии диафрагмы в виде 'off' или 'on', или как числовой или логический 0 ложь) или 1 TRUE). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

Установка этого свойства к 'on' чертит разделительную линию слева от инструмента на панели инструментов.

Советы

  • Toolbar объекты (и их дочерний PushTool и ToggleTool объекты), не кажутся в цифрах чей WindowStyle свойство установлено в 'modal'. Если у фигуры, содержащей дочерний элемент панели инструментов, есть ее WindowStyle измененный на 'modal', дочерний элемент панели инструментов все еще существует в Children свойство фигуры. Однако панель инструментов не появляется в то время как WindowStyle установлен в 'modal'.

  • В отличие от UIControl кнопки, инструменты нажатия не устанавливают фигуру SelectionType свойство к 'open' на втором нажатии кнопки.

Смотрите также

Функции

Свойства

Представлено до R2006a