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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 29.08.2013, 08:57
Nikilay_88 Nikilay_88 вне форума
Прохожий
 
Регистрация: 29.08.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
Вопрос смена цвета по интервалам времени

Здравствуйте, помогите пожалуйста!!!!
Вообщем нужно чтоб объект заменял 2 цвета, при чем время задержки цвета вбивается вручную..... Например лампочка включилась(жёлтый цвет)
на десять секунд.... и выключилась(черный цвет) на 1 секунду... потом меняешь значение ... включилась на 1 секунду выключалась на 3 сек.... и т.д это нужно делать по нажатии кнопки на форме...
Ответить с цитированием
  #2  
Старый 29.08.2013, 09:33
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

TTimer спасет гиганта мысли.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #3  
Старый 29.08.2013, 09:37
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Я те помогу.
Попробуй использовать sleep и StrToInt.

Надеюсь ты разберёшься куда чего вставить?

Цитата:
TTimer спасет гиганта мысли.
Это по лучше будет.
__________________
11011111 INED Home code
VK

Последний раз редактировалось ined, 29.08.2013 в 09:48.
Ответить с цитированием
  #4  
Старый 29.08.2013, 09:42
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Да и ещё. Тут получается, что 3 цвета. Жёлтый,чёрный и нейтральны.
ТЕ Жёлтый вкл на 10 сек => Чёрный на 1 сек => Нейтральный.
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #5  
Старый 29.08.2013, 09:57
Nikilay_88 Nikilay_88 вне форума
Прохожий
 
Регистрация: 29.08.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

я и так с таймером делаю... есть два поля edit 1 и edit2 первому даешь значение сколько будет показываться желтый второму черный.... и по заданным значениям объект должен мигать.... как это написать то?
Ответить с цитированием
  #6  
Старый 29.08.2013, 10:00
Nikilay_88 Nikilay_88 вне форума
Прохожий
 
Регистрация: 29.08.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

у меня объект это panel1.... по умолчанию цвет черный, когда выставляешь значение в edit2 , например 5000, то через 5 сек становиться желтым... и стоит так))
Ответить с цитированием
  #7  
Старый 29.08.2013, 10:03
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Значит задал вопрос не правильно 1ый раз. Точнее выражайся.!!
Так что тебе конкретно то надо? Опиши проблему подробнее.
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #8  
Старый 29.08.2013, 10:08
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Цитата:
Сообщение от Nikilay_88
у меня объект это panel1.... по умолчанию цвет черный, когда выставляешь значение в edit2 , например 5000, то через 5 сек становиться желтым... и стоит так))
Угу понятно. Тут всё просто. Нужно только слегка подумать. И добавить немного логических операторов типа IF.
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #9  
Старый 29.08.2013, 10:10
Nikilay_88 Nikilay_88 вне форума
Прохожий
 
Регистрация: 29.08.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

короче.... два поля edit1,и edit2.... нужно чтобы объект -panel1 меняла два цвета с периодом который задаешь в полях( при клике на кнопку).. Менять цвет должна без остановки, (как лампочка которая мигает беспрерывно, тока интервал между ВКЛ и ВЫКЛ задаешь самостоятельно) Так понятно надеюсь? Помогите пожалуйста !!!!
Ответить с цитированием
  #10  
Старый 29.08.2013, 10:54
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Тебе нужно что то вроде :
Код:
type

  TLamp = record
    cvet: integer;
    tik: integer;
  end;

  TMLamp = array[boolean] of TLamp; 
Надеюсь дальше сам до думаешь
__________________
11011111 INED Home code
VK
Ответить с цитированием
  #11  
Старый 29.08.2013, 11:51
Аватар для SCrat.ORS
SCrat.ORS SCrat.ORS вне форума
Активный
 
Регистрация: 20.02.2007
Адрес: Мой адрес не дом и не улица, мой адрес 0x7С00
Сообщения: 208
Версия Delphi: 2006
Репутация: 884
По умолчанию

можно так:
Код:
const
t1=1000;//таймер желтого
t2=5000;//таймер зелёного
t3=10000;//таймер нейтрали
var
counter:integer;   //счетчик
begin
panel1.Color:=clBlack; //стартовый цвет
counter:=0; //обнуление счетчика
   While true do begin   //запуск бесконечного цикла
   case counter of      //начала блока условий
     t1: panel1.Color:=clYellow;
     t2: panel1.Color:=clgreen;
     t3: begin panel1.Color:=clBlack; counter:=0; end;
   end;
   sleep(1);  //пауза. если в таймере делать то не нужно эту строку
   inc(counter);  //прибавляем к счетчику
   application.ProcessMessages;// чтобы не зависало
   end;
end;

но лучше делать не в бесконечном цикле а в TTimer с interval = 1
__________________
Програмистами не рождаются, ими становятся!
Ответить с цитированием
  #12  
Старый 29.08.2013, 12:21
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Lamp.zip На скорою руку. И без описания.
__________________
11011111 INED Home code
VK
Ответить с цитированием
Этот пользователь сказал Спасибо ined за это полезное сообщение:
Nikilay_88 (29.08.2013)
  #13  
Старый 29.08.2013, 12:43
Nikilay_88 Nikilay_88 вне форума
Прохожий
 
Регистрация: 29.08.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
Смех

Цитата:
Сообщение от ined
Вложение 4063 На скорою руку. И без описания.
вот спасибо!!!! выручил.... тока жаль обьяснений нет
Ответить с цитированием
  #14  
Старый 29.08.2013, 13:20
Nikilay_88 Nikilay_88 вне форума
Прохожий
 
Регистрация: 29.08.2013
Сообщения: 9
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

а как теперь сделать так, что бы еще можно было посчитать сколько раз сменил цвет квадрат за заданный промежуток времени))))
Ответить с цитированием
  #15  
Старый 29.08.2013, 14:26
Аватар для ined
ined ined вне форума
Начинающий
 
Регистрация: 16.11.2008
Адрес: Российская Федерация!! :)
Сообщения: 165
Версия Delphi: Delphi 2010
Репутация: 1272
По умолчанию

Ты знаешь такую истину, что не всегда за тебя всё будут делать. А если и будут то что тогда у тебя в голове отложится. Ты должен сам достичь совершенства, а не с помощью других. Мы можем тебя направить в нужное русло.!!
А то что я тут на ваял, это просто от того, что я давно не програмил. Соскучился
__________________
11011111 INED Home code
VK
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter