PDA

View Full Version : رسم نمودار متحرک در دلفی



vida_zarkesh
یک شنبه 22 بهمن 1385, 22:47 عصر
سلام به همه اساتید
کسی می دونه چطور می تونم در دلفی نموداری رو بکشم که تا زمانی که برنامه باز است اطلاعاتی رو از پورت کامپیوتر بگیره و نمودار آن را بر حسب زمان را رسم کنه؟!!!!

vida_zarkesh
دوشنبه 23 بهمن 1385, 08:05 صبح
کسی نمی تونه در این زمینه به من کمک کنه!!!!!
من احتیاج به جواب فوری دارم!

nasr
دوشنبه 23 بهمن 1385, 08:53 صبح
مهم اینه که شما ارتباط را با پورت برقرار کنی و اطلاعات را بریزی داخل یک دیتابیس

دیگه نمودار کشیدنش را و اینکه متحرک باشه خود دلفی برات انجام میده البته با یک Timer

Aidin
دوشنبه 23 بهمن 1385, 09:47 صبح
اگه مشکلتون رو کامل توضیح بدین حتما می تونن کمک کنن بهتون.

shobair
دوشنبه 23 بهمن 1385, 10:07 صبح
سلام به همه اساتید
کسی می دونه چطور می تونم در دلفی نموداری رو بکشم که تا زمانی که برنامه باز است اطلاعاتی رو از پورت کامپیوتر بگیره و نمودار آن را بر حسب زمان را رسم کنه؟!!!!

سلام
یک کامپوننت مثل Async32 برای خواندن اطلاعات از پورت. و برای کشیدن نمودار هم از TChart استفاده کنید.

شبیر

vida_zarkesh
دوشنبه 23 بهمن 1385, 22:24 عصر
من کامپوننت comport و کامپوننت مربوط به رسم نمودارو نصب کردم. مشکلی با خوندن داده از پورت ندارم.بلد نیستم که چه دستوری توی timer باید بنویسم تا نمودار برام رسم کنه.و می خوام تا زمانی که برنامه در حال اجرا هست نمودار رسم بشه.امیدوارم منظورمو خوب رسونده باشم. از همه اساتید ممنونم.

mzjahromi
سه شنبه 24 بهمن 1385, 07:27 صبح
سلام به همه اساتید
کسی می دونه چطور می تونم در دلفی نموداری رو بکشم که تا زمانی که برنامه باز است اطلاعاتی رو از پورت کامپیوتر بگیره و نمودار آن را بر حسب زمان را رسم کنه؟!!!!

اگر اشتباه نکنم میخواهید یه چیزی شبیه به اسیلوسکوپ بنویسید درسته ؟
در هر حال روش کار یکی هست .
شما باید هر چند میلی ثانیه یک بار نمودار روی صفحه تون رو دوباره نویسی کنید. البته بسته به نوع تصویرتون و تکنیکی که برای این کار بکار میبرید کیفیت کارتون تغییر میکنه ولی اگه اطلاعات بیشتر میخوای باید در مورد کارت بیشتر توضیح بدی

m-khorsandi
سه شنبه 24 بهمن 1385, 09:00 صبح
قاعدتاً از همون کدی که برای یکبار نمایش اطلاعات خوانده شده از پورت در چارت استفاده می‌کنید،
باید در Timer استفاده کنید، مگر اینکه مورد خاصی وجود داشته باشه.
مثال زیر رو هم ببینید :
ساعت و تاریخ (http://www.barnamenevis.org/forum/showthread.php?t=26048)

vcldeveloper
سه شنبه 24 بهمن 1385, 09:15 صبح
ظاهرا مشکل این بنده خدا در رسم نمودار هست، نه خوندن داده ها از Port. برای رسم نمودار می تونید یک TChart روی فرم برنامه بزارید (از تب Additional در Components Pallet و روش دابل کلیک کنید تا TChart Editor باز بشه. از طریق این Editor می تونید مشخصات مختلف نمودارتون رو تغییر بدید. مهمترین بخشی که بهش احتیاج دارید صفحه Series هست. در این صفحه روی دکمه Add کلیک کنید و یکی از انواع نمودار را انتخاب کنید. با ایجاد یک Series جدید، می تونید مشخصات و نحوه نمایش اون رو تغییر بدید. بعد از اینکه تغییرات مورد نظر رو اعمال کردید، پنجره مربوطه رو ببنید. حالا کافیه در رویداد OnTimer مربوط به Timer ایی که ازش استفاده می کنید، با استفاده از متد Add مقادیر جدید رو به Series ایجاد شده اضافه کنید. برای مثال کد زیر مقدار 1000 را با رنگ آبی و برچسب A Lable به نمودار اضافه میکنه:


Series1.Add(1000,'A Lable',clBlue);
در Help دلفی متدها و خصوصیات TChart توضیح داده شده. در TChart Editor هم یک دکمه Help برای آموزش بخش های مختلف این Editor وجود داره.
اگر داده ها را از یک بانک اطلاعاتی می خونید، اونوقت می تونید از DBChart بجای TChart استفاده کنید.

موفق باشید.