Dialog.FolderBrowse
Описание
Представляет диалоговое окно просмотра папки для получения пользователем пути к папке.
ПараметрыPrompt
(строка) Текст сообщения в диалоговом окне.
DefaultFolder
(строка) Папка просмотра по умолчанию.
Совет: Для выбора папки можно кликнуть по кнопке открыть (browse).
ВозвратResultVariable
(строка) Путь к выбранной, в диалоговом окне просмотра, папке. Если пользователь отменил операцию (нажал на кнопку отмена - cancel), будет возвращена строка "CANCEL". Если происходит ошибка, будет возвращена пустая строка "". Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия
ПримерыПример 1folder_path = Dialog.FolderBrowse("Select Folder", _SourceFolder .. "\\AutoPlay");Предлагаем пользователю выбрать одиночную папку в папке "AutoPlay" на CD-ROM и сохраняем путь к выбранной папке в переменной по имени "folder_path". Примечание: _SourceFolder
это встроенная переменная, содержащая путь к папке, где размещен файл autorun.exe.
Пример 2-- Display a folder browse dialog -- Показываем диалоговое окно просмотра папки storage_path = Dialog.FolderBrowse("Store Files In", _ProgramFilesFolder); -- If CANCEL was not chosen, then let's get the folder path -- Если не была кликнута CANCEL, давайте получим путь к папке if (storage_path ~= "CANCEL") then Dialog.Message("You chose the following folder", storage_path); endЗапрашиваем у пользователя путь к хранящимся файлам, позволяя ему просматривать папку, начиная с папки Program Files. Полученный путь сохраняем в переменной storage_path. Во втором блоке кода проверяем, не нажал ли пользователь кнопку отмена - cancel. Если он не нажимал, показываем окно сообщения отображающее выбранную папку. Примечание: _ProgramFilesFolder
это встроенная переменная, которая содержит путь к папке пользователя Program Files.
Пример 3-- Allow the user to select a directory to unzip the files. -- Разрешаем пользователю выбрать папку для распаковки файлов. target_folder = Dialog.FolderBrowse("Select a Folder", "C:\\"); -- Check to see if the user cancelled or an error occurred. -- Смотрим, не отменил ли пользователь действие и не произошла ли ошибка. if (target_folder ~= "CANCEL") and (target_folder ~= "") then -- Gets a list of the contents of a zip file. -- Получаем список содержимого zip файла. zip_contents = Zip.GetContents("AutoPlay\\Docs\\Info.zip", true); -- Get the error code of the last action. -- Получаем код ошибки для последнего действия. error = Application.GetLastError(); -- If an error occurred, display the error code message. -- Если случается ошибка, показываем сообщение с кодом ошибки. if (error ~= 0) then Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION); else -- Take the table and turn it into a string with newlines for displaying. -- Берем таблицу и превращаем её в строку, показывая каждый элемент с новой строки. zip_contents_display = Table.Concat(zip_contents, "\r\n", 1, TABLE_ALL); -- Ask the user if they are sure they would like to unzip the contents. -- Спрашиваем пользователя, уверен ли он, что хочет распаковать содержимое. result = Dialog.Message("Information", "The following files will be unzipped:\r\nClick the Cancel button to abort the process.\r\n\r\n" .. zip_contents_display, MB_OKCANCEL) -- If the user clicked Ok, unzip the files. -- Если пользователь кликнет Ok, распаковываем файлы. if (result == IDOK) then -- Show the status dialog. -- Показываем диалоговое окно состояния. StatusDlg.Show(); -- Extract the contents of the Zip file. -- Извлекаем содержимое из Zip файла. Zip.Extract("AutoPlay\\Docs\\Info.zip", {"*.*"}, target_folder, true, true, "", ZIP_OVERWRITE_NEVER, nil); -- Check the error code for the last action. -- Проверяем код ошибки для последнего действия. error = Application.GetLastError(); -- Hide the status dialog. -- Скрываем диалоговое окно состояния. StatusDlg.Hide(); -- If an error occurred, display the error code message. -- Если происходит ошибка, показываем сообщение с кодом ошибки. if (error ~= 0) then Dialog.Message("Errror", tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION); else Dialog.Message("Success", "The unzipping was successful.", MB_OK, MB_ICONINFORMATION); end end end endВ этом примере сначала пользователю предлагается выбрать папку, при помощи действия Dialog.FolderBrowse. Эта папка будет использована для распаковки файлов. Затем пользователю предоставляется диалоговое окно содержащее имена файлов, которые будут распакованы и разрешается прервать процесс. Если пользователь кликает Ok, файлы будут распакованы в выбранную папку. По окончании процесса будет дано уведомление об успешном или нет завершении процедуры.
Смотрите также: Связанные действия
|