Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 11.12.2013, 14:00   #1
kort95
Пользователь
 
Регистрация: 26.05.2013
Сообщений: 18
По умолчанию Таймер

Подскажите пожалуйста, почему у меня таймер отсчитывает 5 секунд при интервале 1000, хотя должен это делать при интервале 5000?
kort95 вне форума
Старый 11.12.2013, 14:14   #2
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

быть такого не может. Покажите код.
FaTaL вне форума
Старый 11.12.2013, 14:21   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я тоже с похожим сталкивался, когда основной поток, что ловит таймер замораживался какой-то задачей долгой. Было принято решение избавиться от таймера.
I'm learning to live...
Stilet вне форума
Старый 11.12.2013, 14:36   #4
Rockot
Форумчанин
 
Аватар для Rockot
 
Регистрация: 01.06.2012
Сообщений: 139
По умолчанию

Проверь код, тот что выполняет таймер и наконец покажи его, а лучше пройдись поиском по коду с name-ом этого таймера, может ты случайно в каком-то из обработчиков событий меняешь интервал.
Следствие: 99% проблем, сваливаемых на Microsoft, является следствием тупости самих программистов.
Rockot вне форума
Старый 11.12.2013, 20:49   #5
kort95
Пользователь
 
Регистрация: 26.05.2013
Сообщений: 18
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Timer1: TTimer;
    Timer2: TTimer;
    Label3: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button2Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  i,j,y,a,tint,b:integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
y:=5;
tint:=5;
If y<>0 then Timer1.Enabled:= True else  Timer1.Enabled:= False;
If y<>0 then Timer2.Enabled:= True else  Timer2.Enabled:= False;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
dec(y);
If y=0 then Timer2.Enabled:= False;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
tint:=tint+10;
Timer1.Interval :=tint;
randomize;
i:=random(100);
Label2.Caption:=inttostr(i);
If y=1 then  Timer1.Interval:=700;
if y=0 then Timer1.Enabled:= False;

end;

end.

Второй таймер отсчитывает при 1000, ничего не задается в коде в принципе.
kort95 вне форума
Старый 11.12.2013, 20:54   #6
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Каким образом в этом коде отслеживаете интервал срабатывания таймера?
ReportCube вне форума
Старый 11.12.2013, 21:18   #7
kort95
Пользователь
 
Регистрация: 26.05.2013
Сообщений: 18
По умолчанию

Ну интервал задан в инспекторе объектов и работает по переменной "у"
kort95 вне форума
Старый 11.12.2013, 21:29   #8
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Да нехай работает. Результаты где показываете, где видите интервал срабатывания таймера?
ReportCube вне форума
Старый 11.12.2013, 23:44   #9
kort95
Пользователь
 
Регистрация: 26.05.2013
Сообщений: 18
По умолчанию

а, удалил, ну короче в процедуре второго таймера просто вывод на лейбл переменной y

Последний раз редактировалось kort95; 11.12.2013 в 23:48.
kort95 вне форума
Старый 11.12.2013, 23:57   #10
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

И какое отношение вывод Label значения переменной Y имеет к интервалу таймера? Каким образом узнали, что событие таймера с интервалом в 1000 срабатывает через 5 секунд?
ReportCube вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
QT: Таймер Krasi Помощь студентам 5 12.11.2011 08:15
Таймер SashaKrugliak Помощь студентам 3 24.10.2011 08:13
таймер megostudent Общие вопросы Delphi 4 31.07.2011 22:28
таймер nattaella Компоненты Delphi 1 22.06.2011 21:59
Таймер vik85 Microsoft Office Excel 5 17.06.2010 07:10