Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв ВУМИП 2012-07-06.doc
Скачиваний:
66
Добавлен:
13.05.2015
Размер:
9.35 Mб
Скачать

1.7.6.Диалоговые окна ввода и вывода сообщений

InputBox(S1,S2,S3):Stringвывод окна с заголовкомS1, с текстомS2, с по­лем для ввода сообщения, с умалчи­ваемым значениемS3 и с кнопкамиOKиCancel. Функция возвращает вве­ден­ное пользователем сообщение.

Пример:VarDpt:String; //строка для ввода даты поставки товара...

Dpt:=InputBox('Поставки товаров','Дата поставки',DateToStr(Date));

InputQuery(S1, S2, var S3): Boolean - фун­кция аналогична функцииInput­Box, но возвращаетTrue/Falseпри нажатии кнопкиOK/Cancel, а введенное значение ‑ вS3.

ShowMessage(S)‑ вывод окна с текстом сообщенияSи с кнопкойOK.

Пример: ShowMessage(‘Выполняется сортировка файла’)

Application.MessageBox(S1,S2,0)‑ вывод окна с заголовкомS2, с текстом сообщенияS1 и с кнопкойOK.

Пример. Application.MessageBox(‘Конец работы’,’Cooбщение’,0)

ShowMessageFmt(S;P: Array Of Const)‑ вывод окна с отформатирован­ным текстом и с кнопкойOK:S‑ описание формата,P‑ массив форма­ти­руе­мых значений (п.1.7.2).

Пример:

ShowMessageFmt(‘Число %dбольше %d’,[5,3]);

MessageDlg(S,T,K,N:LongInt):Word‑ вывод окна указанного типа (T) с текстом сообщенияS, с нужным вариантом кнопок управления (K) и с номером темы справкиN(если справки нет, тоN=0), вызываемой из окна клавишейF1. Тип окна (T) выводится в заголовке окна и задается именованными константами:

mtWarning‑ окно замечаний с желтым восклицательным знаком;

mtError‑ окно ошибок с красным стоп‑сигналом;

mtInformation‑ информационное окно с голубым символомi;

mtConfirmation‑ окно подтверждения с зеленым вопросительным знаком;

mtCustom‑ заказное окно без рисунка с заголовком ‑ именем программы.

Вариант кнопок (K) задается множеством именованных констант, в квадратных скобках через запятые:mbYes(кнопка с надписьюYes),mbNo,mbOK,mbCancel,mbHelp,mbAbort,mbRetry,mbIgnore,mbAll,mbYesNoCancel,mbAbortRetryIgnore,mbOkCancel.

Функция возвращает значение mr<имя кнопки>, соответствующее выбранной кнопке, например,mrYesилиmrNone(при закрытии окна системной кнопкой ‑ крестик окнаWindows).

Пример:

If MessageDlg('Закончить?',mtConfirmation,[mbyes,mbNo],0)=mrYes Then ...

MessageDlgPos(S,T,K,N:LongInt;X,Y:Integer):Wordфункция аналогична предыдущей, но дополнительными координатамиX,Yзадается местоположение окна на экране.

CreateMessageDialog(S,T,K):TFormсоздание окна в виде объекта формы без его отображения с целью многократного его использования и для задания заголовка окна на русском языке. ПараметрыT,Kописаны выше. Отображение реализуется методамиShowилиShowModal(для анализа ответа). Для удаления формы из памяти используется методFree.

Пример:

ProcedureTForm1.Button1Click(Sender:TObject);//процедура вывода сообщ.

VarF:TForm; //объявление переменной типа формы

Begin//создание формы:

F:=CreateMessageDialog('Сортировка файла',mtWarning,[mbOK]);

F.Caption:='Предупреждение'; //заголовок формы

F.ShowModal; {вывод формы}F.Free; {удаление формы}End;

Application.MessageBox(S1,S2,Flag:LongInt):Integer‑ функция (метод при­ло­­же­­ния) выводит текст сообщения S1 в окно с заголовком S2 с указанным видом и набором кнопок, заданным параметромFlag. ПараметрFlagесть сумма по одному значению из следующих групп флажков.

Флаги кнопок с названиями на русском языке для руси­фи­ци­ро­ван­ного Windows:mb_AbortRetryIgnore(кнопки Стоп, Повтор, Пропустить),mb_Ok(OK) ,mb_OkCancel(OK, Отмена),mb_RetryCancel(Повтор, Отмена),mb_YesNo(Да, Нет),mb_YesNoCancel(Да, Нет, Отмена).

Флаги рисунков‑иконок в окне:

mb_IconWarning‑ окно замечаний с желтым восклицательным знаком;

mb_IconError‑ окно ошибок с красным стоп ‑ сигналом;

mb_IconInformation‑ информационное окно с голубым символомi;

mb_IconQuestion‑ окно подтверждения с зеленым вопросительным знаком.

Флаги, указывающие номер кнопки по умолчанию: mb_DefButton1 (1),mb_DefButton2 (2),mb_DefButton3 (3),mb_DefButton4 (4).

Флаги модальности: mb_AppModal(пользователь обязан ответить на вопрос, но может работать с другими окнами, принят по умолчанию),mbSystemModal(аналогичен предыдущему, но окно всегда остается поверх других окон, используется при ошибках, требующих вмешательства).

Дополнительные флаги (могут задаваться оба флага): mb_Help(добавляется кнопка Справка),mb_TopMost(окно всегда сверху).

Функция возвращает значение idAbort(выбрана кнопка Стоп),idCancel(Отмена),idIgnore(Пропустить),idNo(Нет),idOK(OK),idRetry(Повтор),idYes(Да).

Пример:

IfApplication.MessageBox('Закончить работу?','Запрос',

mb_YesNo+mb_IconQuestion+mb_DefButton2)=idYes Then Close;

SelectDirectory(S1, S2, out S3): Boolean вывод окна для поиска файла с текстом сообще­нияS1, с корневым каталогомS2. Имя выбранного файла помещается вS3. Функ­ция возвращает значениеTrue/Elseпри нажатии кнопкиOk/Cancel.