Создайте диалоговое окно прогресса
задает d
= uiprogressdlg(fig
,Name,Value
)ProgressDialog
значения свойств с использованием Name,Value
аргументы в виде пар. Используйте значения свойств для управления внешним видом и поведением диалогового окна. Например, вы можете добавить заголовок или сообщение в диалоговое окно или задать неопределенный индикатор прогресса.
Создайте программный файл с именем myprogress1.m
который создает рисунок и диалоговое окно прогресса. Обновление Value
и Message
свойства в трех разных точках кода.
function myprogress1 fig = uifigure; d = uiprogressdlg(fig,'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 fig = uifigure; d = uiprogressdlg(fig,'Title','Computing SVD',... 'Indeterminate','on'); drawnow % Do the SVD computation svd(rand(5000)); % close the dialog box close(d) end
Установка Indeterminate
свойство к 'on'
анимирует индикатор прогресса, чтобы указать, что прогнозируемое время завершения не существует. После завершения расчета, close
функция закрывает диалоговое окно.
Запустите программу, чтобы выполнить сингулярное разложение и отобразить диалоговое окно прогресса.
myprogress2
Создайте программный файл с именем myprogress3.m
который создает рисунок и отображает индикатор прогресса с аппроксимацией значения pi.
function myprogress3 fig = uifigure; d = uiprogressdlg(fig,'Title','Approximating Pi',... 'Message','1','Cancelable','on'); drawnow % 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
цикл концов или пользователь отменяет.
Запустите программу, чтобы аппроксимировать pi и отобразить диалоговое окно прогресса.
myprogress3
fig
- Целевой рисунокFigure
объектЦелевой рисунок, заданная как Figure
объект. Рисунок должна быть создана с uifigure
функция.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
d = uiprogressdlg(uifigure,'Value',0.25)
Примечание
Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства ProgressDialog.
'Value'
- Дробь завершена0
(по умолчанию) | число между 0
и 1
Дробь завершена, заданная как число между 0
и 1
. Индикатор прогресса достигает своей полной длины, когда значение 1
. Изменение Value
в различных точках вашего кода, чтобы обеспечить визуальное указание на прогресс в работающем приложении.
Типы данных: double
'Message'
- сообщение''
(по умолчанию) | вектор символов | массив ячеек из векторов символов | строковые массивыСообщение, заданное как вектор символов, массив ячеек из векторов символов или строковые массивы. Сообщение отображается в диалоговом окне над индикатором прогресса.
Чтобы отобразить несколько линии текста, задайте массив ячеек из векторов символов или строковые массивы. Каждый элемент массива соответствует линии текста. Жесткие пропуски внутри каждого элемента, такие как '\n'
, создать дополнительные линии текста.
Пример: d = uiprogressdlg(uifigure,'Message','Calculating result.');
'Title'
- Заголовок''
(по умолчанию) | символьный вектор | строковый скалярЗаголовок, заданная как вектор символов или строковый скаляр. Заголовок отображается в строке заголовка диалогового окна.
Пример: d = uiprogressdlg(uifigure,'Title','Calculating');
'Indeterminate'
- Неопределенный прогресс'off'
(по умолчанию) | логическое значение включения/выключенияНеопределенный прогресс, заданный как 'off'
или 'on'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Установите это свойство на 'on'
предоставление анимированной панели без какой-либо конкретной информации о прогрессе. Эта анимация полезна, когда вы не знаете, сколько времени займет вычисление.
Чтобы предотвратить бессрочное отображение неопределенных полос прогресса, вызовите close
функция после завершения вычислений.
'Cancelable'
- Разрешить отмену'off'
(по умолчанию) | логическое значение включения/выключенияРазрешить отмену, заданное как 'off'
или 'on'
, или как числовое или логическое 1
(true
) или 0
(false
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState
.
Значение 'on'
отображает кнопку отмены в диалоговом окне. Вы можете настроить метку кнопки, задав CancelText
свойство.
Когда вы разрешаете отмену, необходимо проверить значение CancelRequested
свойство и вызов close
функция, когда значение true
. В противном случае диалоговое окно отображается бесконечно.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.