Функции организации диалога
Справочная информация
Функции преобразования function AnsiUpperCase(const S: string): string преобразует символы строки S к верхнему регистру; применима к русским текстам. function LowerUpperCase(const S: string): string преобразует символы строки S к нижнему регистру; применима к русским текстам. function Pos(SubStr: string; S: string): Integer возвращает позицию (индекс) первого вхождения SubStr в S. Если SubStr нет в S, возвращается 0. function FloatToStr(V: Extended): string преобразует действительное число V в строку. function FloatToStrF(V,f,k,m): string преобразует действительное число V в строку с форматной записью. f-формат, определяет способ изображения числа: ffGeneral – универсальный, ffExponent – научный, ffFixed – с фиксированной точкой; k – общее число цифр числа; m – число цифр в дробной части числа. function IntToStr(K: Integer): string преобразует целое число K в строку. function StrToFloat(const S: string): Extended преобразует строку S в действительное число. function StrToInt(const S: string): Integer преобразует строку S в целое число. Функции организации диалога function MessageDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Word; Функция отображает окно, в котором пользователю задается какой-то вопрос и анализируется полученный ответ, зависящий от нажатой кнопки. Соответствующими фактическими параметрами должны быть
а ниже соответствующая пиктограмма определяющее текст заголовка окна и рисунок значка на окне (например, Confirm и ). Возможные значения и текст на соответствующей пиктограмме: - mtWarning – окно предупреждений, заголовок Warning и черный восклицательный знак на желтом фоне; - mtError – окно ошибок, заголовок Error и красный круг с белым крестом; - mtInformation – информационное окно, заголовок Information и буква i на белом фоне; - mtConfirmation – окно подтверждения, заголовок Confirm и знак вопроса на белом фоне; - mtCustom – заказное окно, пиктограмма отсутствует, а в качестве заголовка используется имя файла приложения
базового типа соответствует предопределенная именованная константа) вида: mrYes, mrNo, mrOK, mrCancel, mrAbort, mrRetry, mrIgnore, mrAll, mrNoToAll, mrYesToAll, mrHelp
1. Диалог при окончании работы приложения If MessageDlg('Закончить работу с приложением?', mtConfirmation, [mbYes, mbNo],0) = mrYes then Begin MessageDlg(‘Работа приложения закончена’; mtInformation, [mbOK],0); Close; End; Первый вызов MessageDlg приводит к отображению окна типа mtConfirmation с вопросом о завершении приложения. При нажатии пользователем кнопки Yes выводится второе окно типа mtConfirmation с сообщением о завершении.
2. Возникла ситуация, когда решение должен принять пользователь case MessageDlg('Продолжить работу?', mtConfirmation, [mbYes, mbNo],0) of mrYes:; // продолжить выполнение процедуры mrNo: exit; //выход из процедуры end;
3. Необходимо принять решение при закрытии файла //Если текст новый или был изменен, то открывается окно диалога 'Сохранить данные?'[mbYes, mbNo, mbCancel] if Memo1.Modified then begin d:=MessageDlg('Сохранить данные?', mtConfirmation,[mbYes, mbNo, mbCancel], 0); case d of mrYes: begin //да, сохранить! if s<>'' then // сохранить в том же, редактируемом файле Memo1.Lines.SaveToFile(S) else // сохранить в файле, который следует выбрать в диалоге SaveAs... N6Click(Self);//вызов обработчика сохранить как //считать, что текст не модифицирован Memo1.Modified:=false; End; mrCancel://не сохранять и вернуться к редактированию exit; mrNo:;//не сохранять end;//case end;//if
function InputQuery(const ACaption, APrompt: string; var Value: string): Boolean; Отображает окно диалога с заголовком ACaption, с пояснением, что должен ввести пользователь APrompt в строке ввода, соответствующей параметру Value, и кнопками OK и Cancel. При щелчке на кнопке OK функция вернёт значение true и текст из поля в параметре Value. При щелчке на кнопке Cancel функция вернёт значение false и пустую строку в параметре Value.
Диалог при задании номера группы Group:= 'ИУ2-21': Group:=InputQuery ('Введите номер группы', 'Например', ''); function InputBox(const ACaption, APrompt, ADefault: string): string; Отображает окно диалога с заголовком ACaption, с пояснением, что должен ввести пользователь APrompt в строке ввода, в которой изначально будет отображен текст, заданный параметром ADefault, и кнопками OK и Cancel. При щелчке на кнопке OK функция вернёт значение текст из поля ввода, а при щелчке на кнопке Cancel функция вернёт значение параметра ADefault даже если пользователь изменил текст в поле ввода.
Диалог при задании имени файла S:= InputBox ('Ввод имени файла', 'Введите имя файла', '');
function ShowMessage(const Msg: string): string; Отображает простое окно сообщения Msg и кнопкой ОК.
ShowMessage('Список пуст')
|