Обработка данных в формате дата/время. Вывод данных из...

Preview:

DESCRIPTION

Обработка данных в формате дата/время. Вывод данных из программы на печать. Delphi. Тема 10. План темы:. 1. Тип TDateTime . 2. Операции с данными типа TDateTime. 3. Процедуры и Функции для данных типа TDateTime . 4. Компоненты MonthCalendar, DateTimePicker, Timer. - PowerPoint PPT Presentation

Citation preview

Обработка данных в Обработка данных в формате дата/время.формате дата/время.

Вывод данных из Вывод данных из программы на печать. программы на печать.

Delphi. Delphi. Тема Тема 1010..

План темы:План темы:

1. Тип 1. Тип TDateTimeTDateTime.. 2. Операции с данными типа 2. Операции с данными типа

TDateTime.TDateTime. 3. 3.

Процедуры и Функции для даннПроцедуры и Функции для данных типа ых типа TDateTimeTDateTime..

4.4. Компоненты Компоненты MonthCalendar, DateTimePicker, TiMonthCalendar, DateTimePicker, Timer.mer.

5. Вывод данных из программы н5. Вывод данных из программы на печать.а печать.

66. . Пример программы.Пример программы.

1. Тип 1. Тип TDateTimeTDateTime..

Для хранения и обработки значений Для хранения и обработки значений даты и времени в даты и времени в Delphi Delphi применяется применяется тип данных тип данных TDateTime.TDateTime.

Он соответствует типу Он соответствует типу DoubleDouble ((вещественный с двойной точностью).вещественный с двойной точностью).

Целая часть элемента данных типа Целая часть элемента данных типа TDateTimeTDateTime соответствует количеству соответствует количеству дней, прошедших с полночи 30 декабря дней, прошедших с полночи 30 декабря 1899 года.1899 года.

Дробная часть соответствует времени Дробная часть соответствует времени дня.дня.

2. Операции с данными 2. Операции с данными типа типа TDateTime.TDateTime.

Дата_2 – Дата_1 = Дата_2 – Дата_1 = <<Кол-во суток Кол-во суток между датамимежду датами>;>;

Дата_1 + Дата_1 + <<Кол-во сутокКол-во суток> = > = Дата_2;Дата_2;

Дата_2 - Дата_2 - <<Кол-во сутокКол-во суток> = > = Дата_1;Дата_1; Формат записи константы Формат записи константы

TDateTime:TDateTime:

ЧислоЧисло..Месяц.Год Месяц.Год Часы:Минуты:СекундыЧасы:Минуты:Секунды

3. 3. Процедуры и функции Процедуры и функции для данных типа для данных типа TDateTimeTDateTime..

Функции:Функции: DateDate – – возвращает текущую дату.возвращает текущую дату. TimeTime – – возвращает текущее время.возвращает текущее время. NowNow – – возвращает текущие дату и возвращает текущие дату и

время.время. DayOfWeek(D)DayOfWeek(D) – – возвращает номер возвращает номер

дня недели даты дня недели даты D (1 – D (1 – воскресенье, 2 – понедельник, …, воскресенье, 2 – понедельник, …, 7 – суббота).7 – суббота).

3. 3. Процедуры и функции Процедуры и функции для данных типа для данных типа TDateTimeTDateTime..

DateTimeToStr (D)DateTimeToStr (D) – – преобразует дату и преобразует дату и время время D D в строку.в строку.

StrToDateTime (S)StrToDateTime (S) – – преобразует строку преобразует строку S S в в дату и время.дату и время.

DateToStr (D)DateToStr (D) – – преобразует дату преобразует дату D D в в строку.строку.

StrToDate (S)StrToDate (S) – – преобразует строку преобразует строку S S в дату.в дату. TimeToStr (D)TimeToStr (D) – – преобразует время преобразует время D D в в

строку.строку. StrToTime (S)StrToTime (S) – – преобразует строку преобразует строку S S в в

время.время.

3. 3. Процедуры и функции Процедуры и функции для данных типа для данных типа TDateTimeTDateTime..

EncodeDateEncodeDate (g, m, d)(g, m, d) – – возвращает возвращает дату, сформированную по году дату, сформированную по году ((g), g), месяцу (месяцу (m), m), дню (дню (d)d)..

EncodeTime (ch, min, sec, msec) EncodeTime (ch, min, sec, msec) – – возвращает время, возвращает время, сформированное по часам (сформированное по часам (ch), ch), минутам (минутам (min), min), секундам секундам (sec), (sec), миллисекундам (миллисекундам (msec)msec)..

3. 3. Процедуры и функции Процедуры и функции для данных типа для данных типа TDateTimeTDateTime..

Процедуры:Процедуры: DecodeDateDecodeDate (D, g, m, d)(D, g, m, d) – – Разбивает Разбивает

значение даты значение даты D D на год (на год (g), g), месяц (месяц (m), m), день (день (d)d). .

DecodeTimeDecodeTime ((T,T, ch,ch, min,min, sec,sec, msec)msec) – – Разбивает значение времени Разбивает значение времени T T на часы на часы ((ch), ch), минуты (минуты (min),min), секунды секунды (sec), (sec), миллисекунды (миллисекунды (msec)msec). .

Переменные Переменные g, m, d, ch, min, sec, msec g, m, d, ch, min, sec, msec должны иметь тип должны иметь тип WordWord ( (целый целый беззнаковый).беззнаковый).

• Для ввода и отображения данных в формате дата удобны компоненты DateTimePicker или MonthCalendar.

44. . Компоненты Компоненты MonthCalendar, MonthCalendar, DateTimePicker, Timer.DateTimePicker, Timer.

•Таймер - это системный генератор событий, который периодически сообщает программе о завершении заданного промежутка времени (событие OnTimer). •Интервал времени между таймерными событиями может устанавливаться в диапазоне от 1 до 65535 миллисекунд (свойство Interval).

44. . Компоненты Компоненты MonthCalendar, MonthCalendar, DateTimePicker, Timer.DateTimePicker, Timer.

5. Вывод данных из 5. Вывод данных из программы на печать.программы на печать.

Некоторые компоненты Некоторые компоненты ((RichEdit, RichEdit, Chart)Chart) имеют специальный метод имеют специальный метод PrintPrint, , который выводит данные из который выводит данные из этих компонентов на печать.этих компонентов на печать.

Для большинства компонентов Для большинства компонентов ((Memo, StringGridMemo, StringGrid и др.) и др.) необходимо организовать вывод необходимо организовать вывод их данных на печать аналогично их данных на печать аналогично выводу данных в текстовый файл.выводу данных в текстовый файл.

5. Вывод данных из 5. Вывод данных из программы на печать.программы на печать.

Для выбора принтера и настройки Для выбора принтера и настройки печати на форму необходимо печати на форму необходимо установить невизуальный установить невизуальный компонент компонент PrintDialogPrintDialog ( (раздел раздел DialogDialog в Палитре компонентов).в Палитре компонентов).

Вызов соответствующего окна Вызов соответствующего окна диалога осуществляет метод диалога осуществляет метод ExecuteExecute, который возвращает , который возвращает значение значение True, True, если пользователь если пользователь завершил диалог по кнопке завершил диалог по кнопке <Ok>.<Ok>.

5. Вывод данных из 5. Вывод данных из программы на печать.программы на печать.

Для организации вывода данных Для организации вывода данных на печать необходимо:на печать необходимо:

Подключить в секции Подключить в секции uses uses модуль модуль PrintersPrinters;;

Определить файловую Определить файловую переменную: переменную: Prn: TextFile;Prn: TextFile;

Открыть принтер:Открыть принтер:

AssignPrn(Prn); Rewrite(Prn);AssignPrn(Prn); Rewrite(Prn);

5. Вывод данных из 5. Вывод данных из программы на печать.программы на печать.

Сформировать очередную строку Сформировать очередную строку выводимой информации, выводимой информации, например:например:

For i:=1 to n doFor i:=1 to n do

S := Memo1.Lines[i];S := Memo1.Lines[i]; Вывести строку на принтер:Вывести строку на принтер:

Writeln(Prn, S);Writeln(Prn, S); Закрыть принтер:Закрыть принтер:

CloseFile(Prn);CloseFile(Prn);

Recommended