![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Подскажите пожалуйста как можно реализовать вывод(числом) №смены(1,2 или 3) например в Edit в зависимости от текущего времени.
Если например: 1 смена работает - с 22:00 вечера до 7:00 утра, 2 смена работает - с 7:00 утра до 15:00 дня, 3 смена работает - с 15:00 дня до 22:00 вечера. |
#2
|
||||
|
||||
![]() Цитата:
Посмотреть чтоб в uses присутствовал модуль SysUtils (он по умолчанию есть, но на всякий случай), и далее Код:
procedure TForm1.Button1Click(Sender: TObject); begin if (Time>=StrToTime('22:00:0')) and (Time<StrToTime('7:00:0')) then Edit1.Text:= '1'; if (Time>=StrToTime('7:00:0')) and (Time<StrToTime('15:00:0')) then Edit1.Text:= '2'; if (Time>=StrToTime('15:00:0')) and (Time<StrToTime('22:00:0')) then Edit1.Text:= '3'; end; Google в помощь |
#3
|
|||
|
|||
![]() Уточню: на форме есть текущее время
Код:
procedure TForm1.tmr1Timer(Sender: TObject); begin lbl1.Caption:=timetostr(Time); end; ![]() |
#4
|
||||
|
||||
![]() Цитата:
Ну кто так учит программировать? ![]() ![]() Это для того чтобы программа работала быстрей? Это с разряда: PHP код:
PHP код:
Последний раз редактировалось Konrad, 10.10.2011 в 17:14. |
#5
|
|||
|
|||
![]() Всё разобрался......извиняюсь.......создал второй таймер и прописал
Код:
Btn1Click(nil); ![]() |
#6
|
|||
|
|||
![]() вот 2 варианта функции которая возвращает номер смены по дате/времени
Зачем нужен второй (и первый) таймер-не понял... Код:
function GetSmena(Dt:TDateTime):integer; begin Dt:=TimeOf(Dt)*24; if (Dt>=7) and (Dt < 15) then Result:=2 else if (Dt>=15) and (Dt <22) then Result:=3 else Result:=1; end; function GetSmena(Dt:TDateTime):integer; begin Dt:=TimeOf(Dt)*24; if (Dt >=0) then Result:=1; if (Dt>=7) then Result:=2; if (Dt>=15) then Result:=3; if (Dt>=22) then Result:=1; end; Последний раз редактировалось chainik, 10.10.2011 в 22:18. |