Создайте диалоговое окно прогресса
d = uiprogressdlg(f)
d = uiprogressdlg(f,Name,Value)
задает значения свойств 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
f
Плановый показательFigure
Плановый показатель, заданный как объект Figure
. Фигура должна быть создана с функцией uifigure
.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
d = uiprogressdlg(uifigure,'Value',0.25)
Перечисленные здесь свойства являются только подмножеством. Для полного списка смотрите ProgressDialog Properties.
Значение
Завершенная часть0
(значение по умолчанию) | номер между 0
и 1
Часть, завершенная, заданная как номер между 0
и 1
. Индикатор выполнения достигает своего полного, когда значением является 1
. Измените Value
в различных точках в вашем коде, чтобы обеспечить визуальную индикацию относительно прогресса запущенного приложения.
Типы данных: double
сообщение
сообщение''
(значение по умолчанию) | вектор символов | массив ячеек из символьных векторов | массив строкОбменивайтесь сообщениями, заданный как вектор символов, массив ячеек из символьных векторов или массив строк. Индикаторы сообщения в диалоговом окне, выше индикатора выполнения.
Чтобы отобразить несколько строк текста, задайте массив ячеек из символьных векторов или массив строк. Каждый элемент в массиве соответствует строке текста. Твердые пропуски в каждом элементе, такие как '\n'
, создают дополнительные строки текста.
Пример: d = uiprogressdlg(uifigure,'Message','Calculating result.');
заголовок
Заголовок''
(значение по умолчанию) | вектор символов | представляет скаляр в виде строкиЗаголовок, заданный как вектор символов или скаляр строки. Заголовок отображается в строке заголовка диалогового окна.
Пример: d = uiprogressdlg(uifigure,'Title','Calculating');
'Indeterminate'
— Неопределенный прогресс'off'
(значение по умолчанию) | 'on'
Неопределенный прогресс, заданный как 'off'
или 'on'
. Установите это свойство на 'on'
обеспечивать анимированную панель без любой определенной информации о прогрессе. Эта анимация полезна, когда вы не знаете, сколько времени вычисление возьмет.
Чтобы препятствовать тому, чтобы неопределенные индикаторы выполнения отобразились неопределенно, вызовите функцию close
после завершения ваших вычислений.
'Cancelable'
— Позвольте отмену'off'
(значение по умолчанию) | 'on'
Позвольте отмену, заданную как 'off'
или 'on'
. Значение 'on'
отображает кнопку отмены в диалоговом окне. Можно настроить название кнопки путем определения свойства CancelText
.
Когда вы позволяете отмену, необходимо проверять значение свойства CancelRequested
и вызвать функцию close
, когда значением является true
. В противном случае диалоговое окно отображается неопределенно.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.