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

Messagebox (текст_сообщения [,тип_диалогового_окна [,заголовок]])

Здесь текст_сообщения – текст выводимого сообщения;

тип_диалогового_окна – определяет перечень кнопок и значков, которые будут отображаться в диалоговом окне. Этот аргумент функции является числовым, и его значение определяется как сумма трех параметров: типа и количества кнопок, типа значков и номера кнопки, выбранной по умолчанию;

заголовок – определяет содержание заголовочной части окна диалога.

Возможные значения параметров, определяющих тип окна диалога:

Таблица 8

Типы и количество кнопок

Комбинации кнопок

Значение параметра

OK

0

OK и Cancel

1

Abort, Retry, Ignore

2

Yes, No, Cancel

3

Yes, No

4

Retry, Cancel

5

Таблица 9

Типы значков

Значок

Вид значка

Значение параметра

Знак Stop

16

Вопросительный знак

32

Восклицательный знак

48

Информационный знак

64

Таблица 10

Кнопка, выбираемая по умолчанию

Кнопка по умолчанию

Значение параметра

Первая

0

Вторая

256

Третья

512

Функция MESSAGEBOX() возвращает числовое значение, определяющее нажатую пользователем кнопку. В зависимости от этого значения, можно выполнять те или иные действия.

Таблица 11

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

Кнопка

Значение параметра

OK

1

Cancel

2

Abort

3

Retry

4

Ignore

5

Yes

6

No

7

Рассмотрим конкретные примеры применения информационных сообщений и их виды на примере работы с формой «Работа флота».

Задача

Текст процедуры

Проверка на наличие

нормативов

при расчете числа

отправлений на линии

sele круговые_рейсы

t=0

locate for ; n_проекта=pr.and.п_отпр=po.and.п_назн=pn.and.груз=g

if found()

t=т_кр

else

=messagebox('Для проекта №'+pr+'на линии '+po+' -; '+pn+','+CHR(13)+'груз - '+g+' отсутствуют нормативы.'; +CHR(13)+"Введите недостающую информацию!",;

0+48+0,"Информация к размышлению..." )

endif

Рис. 22. Вид окна информационного сообщения «Информация к размышлению»

Проверка остатков (выявление

неосвоенных

перевозок)

ost=0 && переменная запомнит наличие остатка хотя бы по

одному грузу

sele суда

for i=1 to reccount()

go i

n=номер_дог

op=объем_пер

sele перевозки

seek n

repl освоено with освоено+op, остаток with объем-освоено

if остаток>0

ost=1

=messagebox("По договору №"+str(n,5)+" перевозки не ;

освоены!"+chr(13)+'Примите меры.', 0+48+0, ;

"Предупреждение")

endif

sele суда

endfor

Рис. 23. Вид окна информационного сообщения «Предупреждение»

Предложение вернуться к

назначению

судов и

обработка

реакции

пользователя на предложение

if ost=1

ot=messagebox("Продолжим назначать суда?", 3+32+0,;

"Куда дальше?")

do case

case ot=6 && нажата кнопка Yes

thisform.release && возврат к предыдущей форме

case ot=2 or ot=7 && нажата кнопка Cancel или No

=messagebox("Накрылась премия в квартал!",0+64+0,;

"Привет от бухгалтерии")

endcase

endif

Рис. 24. Виды окон информационных сообщений

«Куда дальше» и «Привет от бухгалтерии»