Dialog.Message
Описание
Представляет диалоговое окно с информационным сообщением для пользователя.
ПараметрыTitle
(строка) Текст, который будет отображаться в заголовке диалогового окна.
Text
(строка) Текст, что появится в диалоговом окне.
Type
(число) Тип отображаемого диалогового окна:
Icon
(число) Иконка, показываемая в диалоговом окне:
DefaultButton
(число) Кнопка, что будет получать фокус по умолчанию:
ВозвратResultVariable
(число) Числовая константа для нажатой кнопки:
Если происходит ошибка, будет возвращена IDCANCEL (значение 2). Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему. При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия
ПримерыПример 1btn = Dialog.Message("Error!", "Unable to proceed.", MB_RETRYCANCEL);Предупреждает пользователя о произошедшей ошибке и спрашивает его, что нужно делать повторить или отменить. В зависимости от того, какая кнопка будет кликнута, в переменной btn будет хранится значение представленное константой IDRETRY или IDCANCEL. Пример 2Dialog.Message("Important", "The rain in Spain falls mainly on the plain.", MB_OK, MB_ICONEXCLAMATION);Предоставляет пользователю важное (хорошо, может быть не так уж важное :) сообщение, и ждет когда он кликнет по кнопке OK для продолжения. Примечание переводчика: В сообщении говорится: Важно. Дождь в Испании падает, в основном, на равнину. Примечание: Этот пример не сохраняет возвращаемое значение в переменной, так как она всегда будет IDOK. В случаях подобных этому, мы говорим, что возвращаемое значение игнорируется.
Пример 3ishappy = Dialog.Message("Prying Question #023", "Are you happy?", MB_YESNO, MB_ICONQUESTION, MB_DEFBUTTON1);Спрашиваем пользователя, счастлив ли он, через диалоговое окно с кнопками Yes (Да) и No (Нет). Так как задается вопрос, указана иконка MB_ICONQUESTION. Для поощрения благополучия у наших пользователей, кнопка Yes (Да) выбрана по умолчанию. Ответ пользователя сохраняется в переменной ishappy как одна из двух констант, IDYES или IDNO. Пример 4-- Gets the path to the user's My Documents folder. -- Получаем путь к папке пользователя Мои документы. my_docs_path = Shell.GetFolder(SHF_MYDOCUMENTS); -- Check to see if the My Documents folder detection was successful. -- Смотрим, было ли обнаружение папки Мои документы успешным. if (Application.GetLastError() == 0)then -- Search the user's My Documents folder for the file "Data.ini". -- Поиск файла "Data.ini" в папке пользователя Мои документы. search_results = File.Find(my_docs_path, "Data.ini", true, false, nil); -- Check to see if an error occurred during the search. If it did, display the error message. -- Смотрим, не произошло ли ошибки в течении поиска. Если это случилось, показываем сообщение об ошибке. error = Application.GetLastError(); if error ~= 0 then Dialog.Message("Error",_tblErrorMessages[error]); else -- If no files were found, notify the user. -- Если файлов не найдено, уведомляем пользователя. if (search_results == nil) then Dialog.Message("Notice", "Data.ini was not found in your My Documents folder."); -- If files were found, display a dialog containing a list of their locations. -- Also ask for deletion confirmation. -- Если файлы найдены, показываем диалоговое окно, содержащее список их размещения. -- Также запрашиваем подтверждение удаления. else message = "Data.ini was found in the following location(s). Click OK to delete the file(s):\r\n\r\n"; for index, path in pairs(search_results) do message = String.Concat(message, path.."\r\n"); end proceed = Dialog.Message("File Search Results", message, MB_OKCANCEL, MB_ICONQUESTION, MB_DEFBUTTON1); -- If the user clicked OK, delete all of the files found. -- Если пользователь кликнул OK, удаляем все найденные файлы. if proceed == IDOK then -- Delete each file found in the search. -- Удаляем каждый файл, найденный при поиске. for index, path in pairs(search_results) do File.Delete(path, false, false, false, nil); -- Check to see if any errors occurred during the deletion. -- Смотрим, не произошло ли ошибки при удалении. if (Application.GetLastError() ~= 0) then Dialog.Message("Error", "The file located at: " .. path .. " could not be deleted."); end end end end end endВ этом примере используется действие File.Find для поиска всех копий определенных INI файлов в папке пользователя Мои документы. Если файл найден, более чем в одном месте, пользователю предоставляется их список и запрашивается, с помощью действия Dialog.Message, не хочет ли он их удалить. Если он согласен, каждая копия удаляется при помощи действия File.Delete.
Смотрите также: Связанные действия
|