Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.09.2011, 23:35
Gudzik11 Gudzik11 вне форума
Начинающий
 
Регистрация: 27.09.2011
Сообщения: 158
Репутация: 10
По умолчанию таймер обратного отчёта

Код:
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;
 
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Timer1: TTimer;
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
   time: TTime;
  timesec: TTime;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.FormCreate(Sender: TObject);
begin
 time := StrToTime('00:00:00');
  timesec:= StrToTime('0:0:1');
  button1.Caption:='Старт' ;
  button2.Caption:='Стоп'  ;
end;
 
procedure TForm1.Timer1Timer(Sender: TObject);
begin
time:=time-timesec;
  Label1.Caption:=TimeToStr(time);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=True ;
time := time+StrToTime('0:10:0')
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled:=False ;
 
end;
 
end.

как сделать чтоб время в таймере выводилось не 9:09:09 а 09:09:09 и ещё не могу понять ка создать условие тоесть если таймер равен нулю то происходит действие?
думал так

Код:
if time= StrToTime('0:00:00') then
  begin
  ShowMessage('таймер остоновлен ');
  Timer2.Enabled:=False ;
  end

но что то пошло не так
как сделать подскажите
Ответить с цитированием
  #2  
Старый 27.09.2011, 23:44
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

1. Используй Format c параметрам '%.2d:%.2d:%.2d', где по-порядку следования - часы, минуты, секунды.
2. Что пошло не так? Мне угадать или сам напишешь?
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #3  
Старый 28.09.2011, 00:30
Gudzik11 Gudzik11 вне форума
Начинающий
 
Регистрация: 27.09.2011
Сообщения: 158
Репутация: 10
По умолчанию

спасибо с 1 проблемой разобрался.
а вот с нулём как быть не понял.
Format c параметрам '%.2d:%.2d:%.2d' это как то так 'hh:mm:ss'
Ответить с цитированием
  #4  
Старый 28.09.2011, 00:42
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Справку по Format-у почитать не досуг? '%.2d' - расширяет число до 2, добавляя нуль впереди, если число состоит из одной цифры.

Код:
var
  Hour, Min, Sec, MSec : DWORD;
  St : String;
begin
  ...
  DecodeTime(Time, Hour, Min, Sec, MSec);
  St := Format('%.2d:%.2d:%.2d', [Hour, Min, Sec]);
  ...
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.

Последний раз редактировалось angvelem, 28.09.2011 в 00:45.
Ответить с цитированием
  #5  
Старый 28.09.2011, 00:54
Gudzik11 Gudzik11 вне форума
Начинающий
 
Регистрация: 27.09.2011
Сообщения: 158
Репутация: 10
Восклицание

а где справку почитать можно ?
Ответить с цитированием
  #6  
Старый 28.09.2011, 01:05
Snake22 Snake22 вне форума
Активный
 
Регистрация: 20.02.2011
Сообщения: 374
Репутация: 744
По умолчанию

[quote=Gudzik11]а где справку почитать можно ?
F1
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:06.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025