Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi.Начало.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.56 Mб
Скачать

Функция MessageDlg

При удалении элемента необходимо спросить у пользователя подтверждения на удаление элемента. Для этого будем использовать встроенную функцию MessageDlg, которая позволяет выводить в окне сообщение пользователю и получать от пользователя ответ. Внешний вид окна приведен на рисунке:

Заголовок функции имеет следующий вид:

function MessageDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons;

HelpCtx: Longint): Word;

Как видно из заголовка функция имеет четыре входных параметра:

Msg – задает текст сообщения;

DlgType – задает тип сообщения, фактически задает пиктограмму (картинку) в окне;

Buttons – задает набор кнопок в окне;

HelpCtx – используется для задания файла помощи.

Для параметра DlgType возможны следующие варианты:

Значение

Описание

mtWarning

Задает пиктограмму с изображением желтого восклица­тельного знака

MtError

Задает пиктограмму с изображением красного стоп-сигнала

mtInformation

Задает пиктограмму с изображением голубой буквы i с точкой

mtConfirmation

Задает пиктограмму с изображением зеленого знака вопроса

MtCustom

Не содержит пиктограммы

Для задания кнопок, как правило, используются следующие константы:

Значение

Описание

mbYesNoCancel

Три кнопки “Yes”, “No”, “Cancel”

mbOKCancel

Две кнопки “Ok” и “Cancel”

mbAbortRetryIgnore

Три кнопки “Abort”, “Retry”, “Ignore”

Для определения возвращаемого функцией значения используются константы:

Выбранная кнопка

Возвращаемое значение

mbOK

mrOk

mbYes

mrYes

mbNo

mrNo

mbCancel

mrCancel

mbAbort

mrAbort

mbRetry

mrRetry

mbIgnore

mrIgnore

Давайте изменим программный код на событие кнопки «Удалить» примера предыдущего пункта, добавив использование функции MessgaeDlg. Программный код будет иметь такой вид:

if MessageDlg('Вы уверены?', mtConfirmation, mbOkCancel, 0) = mrOk then

ListBox1.Items.Delete(ListBox1.ItemIndex);

Теперь, в случае если пользователь ошибочно нажмет на кнопку «Удалить», удаление будет произведено, если только пользователь его подтвердит.

Задание для самостоятельной работы

  1. Создать прокручиваемый список с возможностью множественного выделения элементов. Отобразить выбор пользователя с помощью функции ShowMessage.

  2. Даны два прокручиваемых списка. По кнопкам организовать перемещение элементов из одного списка в другой. По кнопке «>» выделенный элемент левого списка переносится в конец правого списка. По кнопке «<», наоборот, выделенный элемент правого списка переносится в конец левого списка. По кнопке «>>» все элементы левого списка переносятся в конец правого списка, соответственно по кнопке «<<» - все элементы правого списка переносятся в конец левого списка, как показано на рисунке:

.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]