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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.02.2011, 19:05   #1
Tema_666
Новичок
Джуниор
 
Регистрация: 22.02.2008
Сообщений: 2
Восклицание таймер

На форме есть combobox и при выборе второго варианта в нем должен запустится таймер и при достижении значения в 15 минут строчка из combobox должна моргать. как это сделать? кто что посоветует?
Tema_666 вне форума Ответить с цитированием
Старый 27.02.2011, 19:16   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

ХМ... Моргать должна строчка в выпадающем списке или текстовое его поле?
Как бы там ни было можно попробовать создать два таймера. Один на 15 минут поставить, а второй запускать по срабатыванию первого. во втором инициировать отрисовку комбика с изменением цвета. Муторно но можно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.02.2011, 19:23   #3
Tema_666
Новичок
Джуниор
 
Регистрация: 22.02.2008
Сообщений: 2
По умолчанию

там есть лейбел можно сделать что бы он моргал без разницы, лишь бы эффект какойто был
Tema_666 вне форума Ответить с цитированием
Старый 27.02.2011, 21:41   #4
RUSlan48
Пользователь
 
Аватар для RUSlan48
 
Регистрация: 06.12.2009
Сообщений: 65
По умолчанию

Цитата:
Сообщение от Tema_666 Посмотреть сообщение
там есть лейбел можно сделать что бы он моргал без разницы, лишь бы эффект какойто был
чтобы label моргал разными цветами можно так попробовать:

Код:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  if ComboBox1.ItemIndex=1 {счёт идёт с 0} then begin
    Timer1.interval:=15*60*1000; {15 мин в мс}
    Timer1.enabled:=true;
  end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
//по истечении 15 минут выкл Timer1 и вкл Timer2
  Timer1.enabled:=false;
  Timer2.interval:=1000; {время задержки при мигании}
  Timer2.enabled:=true;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var a:boolean;
begin
    a:=not a;
    if a then label1.Font.Color:=clGreen {один цвет} else
      label1.Font.Color:=clRed; {другой цвет}
end;
Делай что должен, и будь что будет
RUSlan48 вне форума Ответить с цитированием
Старый 28.02.2011, 08:24   #5
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Код:
procedure ...
var a:boolean;
begin
    a:=not a;
... 
end;
не смешно, а должно быть глобальным
phomm вне форума Ответить с цитированием
Старый 28.02.2011, 16:09   #6
RUSlan48
Пользователь
 
Аватар для RUSlan48
 
Регистрация: 06.12.2009
Сообщений: 65
По умолчанию

да бред, я согласен))
извиняюсь...
Код:
procedure TForm1.Timer2Timer(Sender: TObject);
begin
    if label1.Font.Color<>clGreen then label1.Font.Color:=clGreen {один цвет} else
      label1.Font.Color:=clRed; {другой цвет}
end;
Делай что должен, и будь что будет
RUSlan48 вне форума Ответить с цитированием
Старый 03.03.2011, 09:20   #7
Моторокер
Пользователь
 
Регистрация: 07.12.2010
Сообщений: 42
По умолчанию

Можно и один таймер без глобальных переменных использовать, если задействовать Tag типа этого:
Код:
if Timer1.Tag=0 then begin // сработал через 15 минут
  Timer1.Tag:= 1;
  Timer1.Interval:= 500; // уменьшаем интервал для мигания
end;
if abs(Timer1.Tag)=1 then begin // если 1 или -1, значит мигаем
  Timer1.Tag:= - Timer1.Tag;
  if Timer1.Tag=1 then
    Label1.Color=clRed
  else 
    Label1.Color=clWindowText;
end;
Моторокер вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Таймер timyr1997 Общие вопросы Delphi 2 07.08.2010 15:25
Таймер vik85 Microsoft Office Excel 5 17.06.2010 07:10
таймер в C# Munky Помощь студентам 2 15.04.2010 20:30
Таймер Михаил Юрьевич Общие вопросы Delphi 1 16.07.2008 08:46
Таймер в С# kommunist Общие вопросы .NET 3 02.06.2008 12:11