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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.02.2012, 01:43   #1
utro35
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 26
По умолчанию График повышения температуры в реальном времени

Здравствуйте.
В программе нужно сделать график температуры.
Происходит повышение, отображается в edit. Время системное.
Делаю так: Series1.AddXY(strtoint(Edit9.Text), '''' + TimeToStr(now) + '''', clRed);
Пишет incompatible files: Double and String
Как будет правильно?
utro35 вне форума Ответить с цитированием
Старый 16.02.2012, 04:51   #2
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

Вы, наверное, и сами поняли, что несовпадение типов( откуда у вас там слово files взялось Х_х) : вещественный тип и строка.
А правильно будет навести мышку на AddXY, зажать CTRL, и щёлкнуть левой клавишей мыши на "посиневший" AddXY. Откроется модуль , в котором описан этот метод, при чём откроется именно на описании этого метода и его входных параметров. Бывает так, что списка параметров нет, и тогда вам нужно будет повторить описанные выше действия уже в открывшемся модуле. Или подняться в начало модуля, перевести каретку на первую строку, нажать CTRL+F, ввести "AddXY" в поле для поиска, выставить forvard в свойствах поиска и нажать ок .Повторный поиск с введёнными данными поиска осуществляются кнопкой F3. Правда ещё проще навести мышку на AddXY и подождать, пока рядом не появится окошко с количеством и типами входных параметров, и если это функция, то и с типом результата.
Если помог, проси поставить минус. Будь оригинален!

Последний раз редактировалось Rin; 16.02.2012 в 04:57.
Rin вне форума Ответить с цитированием
Старый 16.02.2012, 05:22   #3
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Название AddXY намекает, что ей требуются две координаты для установки точки - X и Y. У тебя же число, метка, цвет. Что-то я не вижу две координаты.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 16.02.2012, 08:16   #4
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

form1.Analiz_G.Series[0].AddXY(tdata_val,StrToFloat(form1.K oorGraf.Cells[3,i]), form1.KoorGraf.Cells[4,i], clRed);
или
form1.Analiz_G.Series[0].AddXY(tdata_val,StrToFloat(form1.K oorGraf.Cells[3,i]), '', clRed); //(это предпочтительнее)
где
tdata_val:=StrToDateTime(form1.Koor Graf.Cells[4,i]);
form1.KoorGraf.Cells[4,i] это дата и время в нужном формате.
form1.KoorGraf.Cells[3,i] это нужное число по оси Y. в вашем случае температура.
а вообще лучше поставить курсор на AddXY и нажать ctrl+F1 и если в английском не силён, то через переводчик гугла переведи фрагмент справки. так же можешь там обратить внимание на другие свойства которые могут пригодиться в вашем проекте.

да и чуть не забыл, в свойствах серии выставь что Х это датавремя
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.

Последний раз редактировалось IliaIT; 16.02.2012 в 08:22. Причина: забыл про свойства графика
IliaIT вне форума Ответить с цитированием
Старый 16.02.2012, 12:35   #5
utro35
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 26
По умолчанию

Еще раз попробую объяснить, что необходимо сделать:
на первый таймер прописываю код: Код: p r o c e d u r e T Ma i n F o r m . T i me r 4 T i me r ( S e n d e r : T O b j e c t ) ; b e g i n i f t = s t r t o i n t ( E d i t 7 . T e x t ) t h e n b e g i n T i me r 4 . E n a b l e d : = f a l s e ; e x i t ; e n d ; t : = t + 1 ; e d i t 9 . t e x t : = i n t t o s t r ( t ) ; На второй таймер: Код: S e r i e s 1 . A d d X Y ( D o u b l e ( n ow ) , s t r t o i n t ( E d i t 9 . T e x t ) , '', clRed) Далее: Код: p r o c e d u r e T Ma i n F o r m . B i t B t n 1 C l i c k ( S e n d e r : T O b j e c t ) b e g i n T i me r 2 . E n a b l e d : = t r u e ; T i me r 4 . E n a b l e d : = t r u e ; e n d ; Температура повышается, но график не рисуется
utro35 вне форума Ответить с цитированием
Старый 16.02.2012, 15:05   #6
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

Цитата:
Сообщение от utro35 Посмотреть сообщение
Еще раз попробую объяснить, что необходимо сделать:
на первый таймер прописываю код: Код: p r o c e d u r e T Ma i n F o r m . T i me r 4 T i me r ( S e n d e r : T O b j e c t ) ; b e g i n i f t = s t r t o i n t ( E d i t 7 . T e x t ) t h e n b e g i n T i me r 4 . E n a b l e d : = f a l s e ; e x i t ; e n d ; t : = t + 1 ; e d i t 9 . t e x t : = i n t t o s t r ( t ) ; На второй таймер: Код: S e r i e s 1 . A d d X Y ( D o u b l e ( n ow ) , s t r t o i n t ( E d i t 9 . T e x t ) , '', clRed) Далее: Код: p r o c e d u r e T Ma i n F o r m . B i t B t n 1 C l i c k ( S e n d e r : T O b j e c t ) b e g i n T i me r 2 . E n a b l e d : = t r u e ; T i me r 4 . E n a b l e d : = t r u e ; e n d ; Температура повышается, но график не рисуется
D o u b l e ( n ow ) Это что такое? нафига ? надо просто now

так ты при просмотре в дельфи (в режиме проекта)видишь свою серию со случайными числами. По оси X время( число месяц год ), а по Y некоторые значения...

если так то свойства серии выставил верно. и всё будет работать.
для проверки можешь временно создать отдельную кнопку со строкой в онклик Series1.AddXY(now,2,'',clRed)
должна рисоваться прямая , а по x ставиться время.

ps хотя и твой код должен работать D o u b l e ( n ow ) . не могу скопировать твой код, ибо много пробелов в словах, а править не охота
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.

Последний раз редактировалось IliaIT; 16.02.2012 в 15:29. Причина: поставил запятые иначе терялся смысл
IliaIT вне форума Ответить с цитированием
Старый 16.02.2012, 17:26   #7
utro35
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 26
По умолчанию

Цитата:
Сообщение от IliaIT Посмотреть сообщение
По оси X время( число месяц год ), а по Y некоторые значения...

если так то свойства серии выставил верно. и всё будет работать.
для проверки можешь временно создать отдельную кнопку со строкой в онклик Series1.AddXY(now,2,'',clRed)
должна рисоваться прямая , а по x ставиться время.
Опять ничего не происходит
utro35 вне форума Ответить с цитированием
Старый 17.02.2012, 11:30   #8
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

проверь это работает у тебя?
это сделано в дельфи 7
Вложения
Тип файла: rar chart and time.rar (6.3 Кб, 63 просмотров)
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.
IliaIT вне форума Ответить с цитированием
Старый 18.02.2012, 01:31   #9
utro35
Пользователь
 
Регистрация: 25.02.2011
Сообщений: 26
По умолчанию

Спасибо вроде все работает.
Только вот незадача, изменил в своем проекте свойства сериес, и после этого перестала появляться основная форма, пишет:
error creating form: identifier expected on line 709
что делать не знаю
utro35 вне форума Ответить с цитированием
Старый 24.02.2012, 13:19   #10
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

телепатов тут мало. а так гляди на строку 709, где то там ошибка или поставь отладку на этой строе и увидишь где ошибся.
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.
IliaIT вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi (Построение графика в реальном времени) Svyazist Помощь студентам 3 02.10.2012 12:48
сложение ячеек в реальном времени Nenado БД в Delphi 4 03.02.2012 10:16
Обработка в реальном времени aferistz PHP 3 25.10.2011 18:03
Возврат значений из DLL в реальном времени Alter Общие вопросы Delphi 5 21.06.2011 19:43
Издеваемся над виндой в реальном времени Fainder Свободное общение 12 15.03.2010 15:22