uiprogressdlg

Создайте диалоговое окно прогресса

Описание

d = uiprogressdlg(f) отображает определенное диалоговое окно прогресса в фигуре f и возвращает ProgressDialog объект. Фигура должна быть создана с помощью uifigure функция.

пример

d = uiprogressdlg(f,Name,Value) задает ProgressDialog значения свойств с помощью Name,Value парные аргументы. Используйте значения свойств, чтобы управлять внешним видом и поведением диалогового окна. Например, можно добавить заголовок или сообщение к диалоговому окну, или задать неопределенный индикатор выполнения.

Примеры

свернуть все

Создайте программный файл под названием myprogress1.m это создает фигуру и диалоговое окно прогресса. Обновите Value и Message свойства в трех различных точках в коде.

function myprogress1
    f = uifigure;
    d = uiprogressdlg(f,'Title','Please Wait',...
        'Message','Opening the application');
    pause(.5)

    % Perform calculations
    % ...
    d.Value = .33; 
    d.Message = 'Loading your data';
    pause(1)

    % Perform calculations
    % ...
    d.Value = .67;
    d.Message = 'Processing the data';
    pause(1)

    % Finish calculations
    % ...
    d.Value = 1;
    d.Message = 'Finishing';
    pause(1)

    % Close dialog box
    close(d);
end

Запустите программу, чтобы отобразить диалоговое окно прогресса.

myprogress1

Создайте программный файл под названием myprogress2.m это создает фигуру и отображает неопределенный индикатор выполнения во время сингулярного разложения.

function myprogress2
    f = uifigure;
    d = uiprogressdlg(f,'Title','Computing SVD',...
        'Indeterminate','on');

    % Do the SVD computation
    svd(rand(5000));

    % close the dialog box
    close(d);
end

Установка Indeterminate свойство к 'on' анимирует индикатор выполнения, чтобы указать, что нет никакого спроектированного времени завершения. После завершения вычисления, close функционируйте закрывает диалоговое окно.

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

myprogress2

Создайте программный файл под названием myprogress3.m это создает фигуру и отображает индикатор выполнения при аппроксимации значения пи.

function myprogress3
    f = uifigure;
    d = uiprogressdlg(f,'Title','Approximating Pi',...
        'Message','1','Cancelable','on');

    % Approximate pi^2/8 as: 1 + 1/9 + 1/25 + 1/49 + ...
    pisqover8 = 1;
    denom = 3;
    valueofpi = sqrt(8 * pisqover8);
    steps = 20000;
    for step = 1:steps 
        % Check for Cancel button press
        if d.CancelRequested
            break
        end
        % Update progress, report current estimate
        d.Value = step/steps;
        d.Message = sprintf('%12.9f',valueofpi);

        % Calculate next estimate
        pisqover8 = pisqover8 + 1 / (denom * denom);
        denom = denom + 2;
        valueofpi = sqrt(8 * pisqover8);
    end

    % Close the dialog box
    close(d);
end

Установка Cancelable свойство к 'on' создает кнопку отмены с меткой по умолчанию, Cancel. Первая команда в for цикл проверяет значение d.CancelRequested видеть, кликнул ли пользователь по кнопке отмены. Если значением является true, программа выходит из цикла. Наконец, close(d) команда закрывает диалоговое окно после for цикл заканчивается или пользовательские отмены.

Запустите программу, чтобы аппроксимировать пи и отобразить диалоговое окно прогресса.

myprogress3

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

свернуть все

Плановый показатель, заданный как Figure объект. Фигура должна быть создана с uifigure функция.

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

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

Пример: d = uiprogressdlg(uifigure,'Value',0.25)

Примечание

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

Часть, завершенная, заданная как номер между 0 и 1. Индикатор выполнения достигает своего полного, когда значением является 1. Измените Value в различных точках в вашем коде, чтобы обеспечить визуальную индикацию относительно прогресса запущенного приложения.

Типы данных: double

Обменивайтесь сообщениями, заданный как вектор символов, массив ячеек из символьных векторов или массив строк. Индикаторы сообщения в диалоговом окне, выше индикатора выполнения.

Чтобы отобразить несколько линий текста, задайте массив ячеек из символьных векторов или массив строк. Каждый элемент в массиве соответствует линии текста. Твердые пропуски в каждом элементе, такие как '\n', создайте дополнительные линии текста.

Пример: d = uiprogressdlg(uifigure,'Message','Calculating result.');

Заголовок, заданный как вектор символов или скаляр строки. Заголовок отображается в строке заголовка диалогового окна.

Пример: d = uiprogressdlg(uifigure,'Title','Calculating');

Неопределенный прогресс, заданный как 'off' или 'on'. Установите это свойство на 'on' обеспечить анимированную панель без любой определенной информации о прогрессе. Эта анимация полезна, когда вы не знаете, сколько времени вычисление возьмет.

Чтобы препятствовать тому, чтобы неопределенные индикаторы выполнения отобразились неопределенно, вызовите close функция после завершения ваших вычислений.

Позвольте отмену, заданную как 'off' или 'on'. Значение 'on' отображает кнопку отмены в диалоговом окне. Можно настроить название кнопки путем определения CancelText свойство.

Когда вы позволяете отмену, необходимо проверять значение CancelRequested свойство и вызов close функционируйте, когда значением будет true. В противном случае диалоговое окно отображается неопределенно.

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

Функции

Свойства

Введенный в R2018a