![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 12.03.2008
Сообщений: 24
|
![]()
Создайте приложение, на форму которого помещены компоненты: Timer, Label и Edit. Напишите обработчик события OnTimer компонента Timer, который каждую секун-ду отображает с помощью компонента Label период времени (в формате ЧЧ:ММ:СС), прошедший с момента, указанного в компоненте Edit (также в формате ЧЧ:ММ:СС).
Помогите плиз, ет последняя задача что мне нужна, и чёт она не получается |
![]() |
![]() |
![]() |
#2 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]() Цитата:
Где код ваших попыток? Вопрос совершенно элементарный, честнее было бы сказать - не хочу, мол, ничего делать, сделайте за меня, а я пусть так неучем и останусь... |
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 12.03.2008
Сообщений: 24
|
![]()
var
Form1: TForm1; StartTime:TDateTime; implementation {$R *.dfm} procedure TForm1.TimerTimer(Sender: TObject); begin Label1.Caption:=TimeToStr(now-StartTime); end; procedure TForm1.FormCreate(Sender: TObject); begin StartTime:=strtotime(Edit1.Text); TimerTimer(sender); end; Только он бьет ошибку, потому что таймер работает посекундно, а в первую секунду Edit1 пустой |
![]() |
![]() |
![]() |
#4 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]() Цитата:
Edit1.Text:=TimeToStr(now); А чтобы не делать преобразования туда-сюда, пишем: StartTime:=now; И тогда уже выглядеть это должно так: procedure TForm1.FormCreate(Sender: TObject); begin StartTime:=now; Edit1.Text:=TimeToStr(StartTime); ... Последний раз редактировалось mihali4; 25.03.2008 в 14:39. |
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 12.03.2008
Сообщений: 24
|
![]()
И всё что-ли?
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 12.03.2008
Сообщений: 24
|
![]()
Мне не нужно отчитывать время от начала работы приложения,в Edit1 должно быть произвольное время.
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 12.03.2008
Сообщений: 24
|
![]()
Вот в этом-то и запарка
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
![]()
Если еще не прдумал, то сделай так. На форме еще нужен Button.
В свойствах Timer ставишь интервал 100. Потом пишешь такой код. Код:
Можно обойтись без кнопки, тогда интервал оставляешь 1000, а время в Эдите задаешь программно. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 12.03.2008
Сообщений: 24
|
![]()
Можно обойтись без кнопки, тогда интервал оставляешь 1000, а время в Эдите задаешь программно.[/QUOTE]
А как программно? |
![]() |
![]() |
![]() |
#10 | ||
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
![]() Цитата:
Резоннее тогда и убрать из создания формы StartTime:=strtotime(Edit1.Text); TimerTimer(sender); Ну, и таймер сделать Enabled:=False изначально. Да, и к тому же мы, как я понял, упустили важный момент: Цитата:
Но и в этом случае ничего сложного - просто капшен лейбла по событию таймера будем менять не всегда, а только после того, как "текущее время станет больше указанного в эдит". До этого момента таймер будет просто осуществлять эту проверку. Последний раз редактировалось mihali4; 25.03.2008 в 21:30. |
||
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Интервал Таймера... | Roof | Общие вопросы Delphi | 27 | 08.07.2008 20:19 |
использование таймера | KancJler | Помощь студентам | 13 | 19.04.2008 01:13 |
Выбор товара из раннего периода? | ASR | Microsoft Office Excel | 11 | 28.01.2008 15:08 |
Отображение песен в Label. | !Анатолий | Общие вопросы Delphi | 13 | 17.11.2007 15:59 |
Вопрос по label. Как сделать так чтобы label была прозрачной. | Lonix | Компоненты Delphi | 2 | 01.04.2007 06:23 |