Информационные технологииStfw.Ru 🔍

Разбираемся с днями недели на Delphi.

Меня уже несколько раз просили объяснить, как работать с днями недели на Delphi.
🕛 25.03.2008, 12:25
Дорова, перец! Меня уже несколько раз просили объяснить, как работать с днями недели на Delphi. Это не очень то и сложно, и много раз было разобрано до меня. Но если просят, то я постораюсь ответить... Ну если ты со мной согласен, то открывай Delphi и создавай новый проект…(File->New).
Я не знаю для каких целей это тебе (пишешь календарь, часы, просто, чтоб прога знала...), но я сделал это в окошке "О программе...", там где описана прога и автор. Ну и там какую-нибудь картиночку для красоты вставим.
Так, кидай на форму компоненты Image, 2 Label’а и Button. В первом Label’е напиши что-то типа : «это самая крутая прога, написанная Васей Пупкиным!!!!», а второй оставь пустым, в него мы будем писать день недели. Кнопку назови просто OK.
Ну вроде приготовления завершены, приступим к сладенькому, к кодингу…

шКодим.

Переходи в редактор кода, видишь последнюю строчку? Там End написано. Так вот, перед ней впиши следующий кусок кода:
function GetDayOfWeek :string;stdcall;//Функция взятия даты
var
day:integer;//номер дня
week:array [1..7] of string;//Дни недели
begin
week[1]:='Воскресенье';//присваивание
week[2]:='Понедельник';//названий
week[3]:='Вторник'; //всех дней недели
week[4]:='Среда';
week[5]:='Четверг';
week[6]:='Пятница';
week[7]:='Суббота';
day:=DayOfWeek(Date);//получение номера дня
Result:=week[day];//запись текущего дня недели
end;
Первой строкой мы создаём свою функцию. Следующими тремя описываем переменные, которые будем использовать в нашей функции. Там описана простая числовая переменная и массив строковых переменных. Т.е. массив - это та же переменная только состоящая не из символов, а из набора каких то переменных, в данном случае - из строк. Вообще, массив - такая мощная штука, что про него не то что статью отдельную, про него книгу писать надо!
Далее, после Begin’а, каждому значению массива присваиваем определённое значение, у нас это название дней недели. Потом, строкой day:=DayOfWeek(Date); , получаем и записываем в числовую переменную номер дня недели. Только функция это европейская, так что и начинается отсчёт дней по европейски с воскресенья.
Ну и в последней строке нашей функции записываем результат.
Так, теперь создавай обработчик события onCreate нашей формы и доводи её до следующего вида:
procedure TForm1.FormCreate(Sender: TObject);
begin
Label2.Caption:=GetDayOfWeek;//Вызов функции
end;
Здесь всё просто: присваиваем названию Label2’а текущий день недели. Ну а по нажатию на кнопку, прикажи нашей проге закрыться стандартным методом Close.
Вроде сказал всё, что хотел, так что пора закругляться. Сорцы моего проекта забирай здесь. А если появятся вопросы, то пиши нам, мы обязательно ответим.

Pascal и Delphi   Теги:

Читать IT-новости в Telegram
Информационные технологии
Мы в соцсетях ✉