listdlg

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

Синтаксис

[indx,tf] = listdlg('ListString',list)
[indx,tf] = listdlg('ListString',list,Name,Value)

Описание

пример

[indx,tf] = listdlg('ListString',list) создает модальное диалоговое окно, которое позволяет пользователю выбирать один или несколько элементов из заданного списка.

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

Функция возвращает два выходных аргумента, indx и tf, содержащий информацию, о котором элементах пользователь выбрал.

Диалоговое окно включает Select all, Cancel и кнопки OK. Можно ограничить выбор одним элементом при помощи пары "имя-значение", 'SelectionMode','single'.

Примечание

Модальное диалоговое окно препятствует тому, чтобы пользователь взаимодействовал с другими окнами перед ответом. Для получения дополнительной информации смотрите WindowStyle в MATLAB® Figure Properties .

пример

[indx,tf] = listdlg('ListString',list,Name,Value) задает дополнительные опции с помощью одного или нескольких аргументов пары "имя-значение". Например, 'PromptString','Select a Color' представляет Select a Color выше списка.

Примеры

свернуть все

list = {'Red','Yellow','Blue',...                   
'Green','Orange','Purple'};
[indx,tf] = listdlg('ListString',list);

d = dir;
fn = {d.name};
[indx,tf] = listdlg('PromptString','Select a file:',...
                           'SelectionMode','single',...
                           'ListString',fn);

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

свернуть все

Список элементов, чтобы представить в диалоговом окне, заданном как вектор символов, массив ячеек из символьных векторов или массив строк. Для массивов ячеек и строковых массивов, каждый элемент обычно соответствует отдельному элементу списка. Если вы вставляете символы новой строки с помощью sprintf, он приводит к большему количеству элементов списка. Например, следующий код приводит к четырем элементам списка, даже при том, что существует только три элемента массива ячеек.

f = listdlg('ListString', ...
            {'John Smith' ...
             sprintf('Cecelia\nPayne-Gaposchkin') ...
             'Gina Peters'});

Пример: {'Ellen','Varun','Haruko','Roger'}

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

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

Пример: 'SelectionMode,'single','InitialValue', 4 указывает, что пользователь может выбрать один элемент из списка и что, когда диалоговое окно открывается, четвертый элемент в списке выбран.

Подсказка поля списка, заданная как вектор символов, массив ячеек из символьных векторов или массив строк. Подсказка появляется выше поля списка.

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

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

Пример: 'PromptString', 'Выбирают каталожный номер':

Перечислите режим выбора, заданный как пару, разделенную запятой, состоящую из 'SelectionMode' и или 'multiple' или 'single'.

  • Если режим выбора установлен в 'multiple', то пользователи могут выбрать несколько элементов списка и отображения кнопки Select all в диалоговом окне.

  • Если режим выбора установлен в 'single', то пользователи могут выбрать один элемент списка только, и кнопка Select all не отображается в диалоговом окне.

Пример: 'SelectionMode','single'

Размер поля списка в пикселях, заданных как пара, разделенная запятой, состоящая из 'ListSize' и двухэлементного вектора, [width height].

Пример: 'ListSize',[150,250]

Выбранные элементы поля списка, заданные как скалярное индексное значение, когда 'SelectionMode' установлен в 'single' и задан как вектор индексов, когда 'SelectionMode' установлен в 'multiple'. Индексы указывают, какие строки в поле списка выбраны, когда диалоговое окно открывается. Например:

  • Если 'InitialValue' установлен в 3, то третий элемент от верхней части списка выбран, когда диалоговое окно открывается.

  • Если 'InitialValue' установлен в [3 4], то третьи и четвертые элементы от верхней части списка выбраны, когда диалоговое окно открывается.

Пример: 'InitialValue',5

Пример: 'InitialValue',[2 5]

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

Пример: 'Name','File Selection'

Название кнопки OK, заданное как вектор символов или скаляр строки.

Пример: 'OKString','Apply'

Название кнопки Cancel, заданное как вектор символов или скаляр строки.

Пример: 'CancelString','No Selection'

Выходные аргументы

свернуть все

Индексируйте к выбранным строкам, возвращенным как массив индексов. Индексы строки соответствуют выборам пользователь, сделанный из списка. Если пользователь нажимает Cancel, нажимает Esc или нажимает близкую кнопку в строке заголовка диалогового окна, то значение indx возвращено как пустой массив.

Логический выбор возвратился как 1 или 0.

Логическое значение выбора указывает, сделал ли пользователь выбор. Если пользователь нажимает OK, дважды кликает элемент списка или нажимает Return, то возвращаемое значение tf равняется 1.

Если пользователь нажимает Cancel, нажимает Esc или кликает по близкой кнопке (X) в строке заголовка диалогового окна, то возвращаемым значением tf является 0.

Больше о

свернуть все

Модальное диалоговое окно

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

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

|

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