Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001

Здесь есть возможность читать онлайн «Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Советы по Delphi. Версия 1.4.3 от 1.1.2001: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Советы по Delphi. Версия 1.4.3 от 1.1.2001»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

…начиная с 1001. Смотрите другие файлы…

Советы по Delphi. Версия 1.4.3 от 1.1.2001 — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Советы по Delphi. Версия 1.4.3 от 1.1.2001», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

{ для синхронизации с движением солнца: }

nCorx := (3 * nCent) div4 – 12;

{ Специальная коррекция для синхронизации Пасхи с орбитой луны: }

nCorz := (8 * nCent + 5) div25 – 5;

{ Находим воскресенье: }

nSunday := (Longint(5) * Year) div4 – ncorx – 10;

{ ^ Предохраняем переполнение года за отметку 6554}

{ Устанавливаем Epact – определяем момент полной луны: }

nEpact := (11 * nGold + 20 + nCorz – nCorx) mod30;

ifnepact < 0 thennEpact := nEpact + 30;

if((nepact = 25) and(ngold > 11)) or(nepact = 24) thennEpact := nEpact + 1;

{ Ищем полную луну: }

nMoon := 44 – nEpact;

ifnmoon < 21 thennMoon := nMoon + 30;

{ Позиционируем на воскресенье: }

nMoon := nMoon + 7 – ((nSunday + nMoon) mod7);

ifnmoon &gtl 31 then

begin

nMonth := 4;

nDay := nMoon – 31;

end

else

begin

nMonth := 3;

nDay := nMoon;

end;

Easter := EncodeDate(Year, nMonth, nDay);

end; {easter}

Преобразование даты в количество секунд

Delphi 1

EncodeDate возвращает объект TDateTime, который просто является double-числом. Для получения количества миллисекунд с даты 1/1/0001, умножьте результат на 86400000.0 Но чтобы избежать переполнения, лучше пользоваться более поздней датой.

Преобразование даты в неделю

Delphi 1

procedureTForm1.Button1Click(Sender: TObject);

var frstDay,toDay : TDateTime; week : Integer;

begin

frstDay := StrToDate('1/1/96');

toDay := StrToDate(Edit1.Text);

week := Trunc((toDay - frstDay) / 7) + 1;

Label1.Caption := IntToStr(week);

end;

Преобразование даты

Delphi 1

procedureTForm1.Button1Click(Sender: TObject);

var

st,formatsave : string;

DT : TDateTime;

begin

st := Edit1.text; // '1996-06-03 00.00.00'

formatsave := ShortDateFormat;

ShortDateFormat := 'yyyy.mm.dd hh.mm.ss';

whilepos ('-', st) > 0 do st [pos ('-', st)] := '.';

DT := StrToDateTime(st);

ShortDateFormat := formatsave;

Label1.Caption := DateTimeToStr(DT);

end;

Преобразование даты — добавление столетия

Delphi 1

LongDate := FormatDateTime('ddmmyyyy', StrToDate(ShortDate));

Данный код преобразует дату, переданную в формате, определенном в виде короткой даты в Панели Управления (типа DD/MM/YY) в формат, заданный в строке Format (в нашем примере DDMMYYYY).

Если DD/MM/YY — входное поле, а DDMMYYYY — поле базы данных, то приведенный выше код может сослужить пользователю хорошую службу, если он вдруг захочет использовать другой формат даты, с его соответствующим переопределением в Панели Управления.

(Естественно, YYYYMMDD для поля базы данных при обычных обстоятельствах будет лучше чем DDMMYYYY, поскольку в настоящее время используется метод последовательной сортировки).

Приведение даты

Delphi 1

procedureTForm1.MaskEdit1Exit(Sender: TObject);

var

y, m, d : word;

begin

decodedate(strtodate(maskedit1.text) + 11, y, m, d);

maskedit2.text := inttostr(m) + '/' + inttostr(d) + '/' + inttostr(y);

end;

Даты и недели

Delphi 1

У меня есть программа, которая делает примерно то, что вы хотите. Она сообщает для даты текущую неделю и день недели. Вам необходимо лишь реализовать вычисление предела для дат недели. Кроме того, формат в этом коде для дат задан в виде "06/25/1996".

Вы должны создать форму с именем "Forma", компонентом TEdit с именем "Edit1", четырьмя метками и кнопкой с именем "GetWeekBtn". Убедитесь в том, что обработчиком события формы OnCreate является метод FormCreate.

Надеюсь, что помог вам.

unitForma;

interface

uses

SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,Forms, Dialogs, StdCtrls;

type

TForma1 = class(TForm)

Edit1: TEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

GetWeekBtn: TButton;

Label4: TLabel;

procedureGetWeekBtnClick(Sender: TObject);

procedureFormCreate(Sender: TObject);

private{ Private declarations }

FunctionHowManyDays(pYear,pMonth,pDay:word):integer;

public{ Public declarations }

end;

var

Forma1: TForma1;

implementation

{$R *.DFM}

UsesInifiles;

procedureTForma1.FormCreate(Sender: TObject);

var WinIni:TInifile;

begin

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Представляем Вашему вниманию похожие книги на «Советы по Delphi. Версия 1.4.3 от 1.1.2001» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001»

Обсуждение, отзывы о книге «Советы по Delphi. Версия 1.4.3 от 1.1.2001» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x