|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.07.2010, 08:09 | #1 |
Регистрация: 20.07.2009
Сообщений: 4
|
Вывод в Memo по Таймеру одной строкой
Всем форумчанам доброго времени суток.
Имеется прога по таймеру выполняет следующее: Если Contact замкнут (нет галочки), то поле Lamp загорается зеленым цветом. Если разомкнут (есть галочка), то поле Lamp загорается красным звучит сирена. Отключаем сирену Sound Off. Если Contact замкнут (нет галочки) чтобы его взвести жмем Lock. При отключенной сирене кнопка Lock не активна. Есть поле с текущим временем и поле Memo где выводится информация: замкнут или же разомкнут контакт.Все пишится в файл Alarm_List.txt. Вопрос в следующем как сделать чтобы при замкнутом контате или разомкнутом в поле Memo и в файл Alarm_List выводилась одна строка. Т.е замкнулся контакт вышла строка ""16 Июль 2010 г. 00:21:51 замкнут"", далее разомкнулся контакт вышла строка ""16 Июль 2010 г. 00:21:55 разомкнут"". В моем же примере в поле Memo постоянно бегут строки о разомкнутом или замкнутом контакте. Исходник прилагаю разместить на c:\primer , а то не находит звук сирены. Вот текст исходника. Спасибо. Можно на мыло alex_n_shtepa@mail.ru Код:
Последний раз редактировалось Stilet; 16.07.2010 в 10:52. |
16.07.2010, 08:17 | #2 |
***
Участник клуба
Регистрация: 30.07.2007
Сообщений: 1,162
|
Так, а зачем тут таймер? Выполняй это в отдельной процедуре.
add: Вот чучуть поправил: Код:
Последний раз редактировалось dr.Chas; 16.07.2010 в 08:31. |
16.07.2010, 10:34 | #3 |
Регистрация: 20.07.2009
Сообщений: 4
|
нет так не пойдет.дело в том что Contact это датчик.И при его срабатывании нужно что бы сирена оставалась включенной и при появлении контакта не переходила опять в состояние замкнут(Lamp зеленый) пока не нажмем кнопку Lock. по таймеру идет опрос датчика. А в поле memo нужно однакратный вывод. Допустим разомкнут горит красный Lamp сирена воет запись в поле memo 16 Июль 2010 г. 11:18:02 разомкнут только один раз(если даже контакт замкнут всеравно горит красный и воет сирена пока не взведем кнопкой Lock)как только Lamp зеленый в поле memo должна отобразится одна строка 16 Июль 2010 г. 11:18:28 замкнут и так каждый раз, а в моем случае при замкнутом или разомкнутом контакте
строка в memo всегда обнавляется |
16.07.2010, 10:45 | #4 |
Форумчанин
Регистрация: 13.07.2010
Сообщений: 346
|
...то поле Lamp загорается зеленым цветом....
гоню.... создай 2 переменные для цвета запоминай предыдущий цвет панелей, сравнивай - если неравны - делай запись если равны - ничего
Non est culpa vin, sed culpa bibentis
Последний раз редактировалось Korben5E; 16.07.2010 в 10:48. |
16.07.2010, 12:08 | #5 |
Регистрация: 20.07.2009
Сообщений: 4
|
плиз реализовать сказанное в примере
|
16.07.2010, 12:25 | #6 |
Форумчанин
Регистрация: 13.07.2010
Сообщений: 346
|
где-то в классе формы объявить
tmpColor : TColor; if tmpColor <> panel1.Color then begin tmpColor := panel1.Color ; if tmpColor = clRed then S := 'разомкнут' else S := 'замкнут'; memo1.Lines.Add(FormatDateTime('ddd ddd hh:nn:ss' , Now) + ' ' + S) end;
Non est culpa vin, sed culpa bibentis
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как записать в memo строку за строкой используя изменения combobox? | Человек_Борща | Общие вопросы Delphi | 3 | 11.04.2010 17:18 |
Язык Си. Записать в **а, адрес пременной одной строкой. | Yaskovich | Помощь студентам | 3 | 06.03.2010 14:51 |
Вывод из консоли в Memo | hotcooler17 | Win Api | 3 | 05.02.2010 20:51 |
Вывод в Memo | Siluet | Общие вопросы Delphi | 18 | 17.04.2009 19:49 |
Вывод информации в Memo из файла. | Фибер Оптик | Общие вопросы Delphi | 11 | 04.05.2007 00:13 |