PDA

View Full Version : مشکل عجیب (bug) در DBgrid یعد از عوض کردن دیتا سورس ها



عقاب سیاه
دوشنبه 31 تیر 1392, 10:38 صبح
درود
نرم افزار من با بانک اطلاعاتی اکسس طراحی شده بود دیروز خواستم کل بانک را به sqlite تغییر بدم من جدول ها را ساختم و ... و کامپوننت های اتصال را از ADO به FireDac تغییر دادم
هیچ مشکلی در کدها و .. به وجود نیومد اما موقع اجرا متوجه شدم که وقتی موس روی DBgrid قرار می گیره ساختار جدول بهم میریزه
البته این مشکل فقط در این پروژه وجود داره من هر یونیت را به صورت جدا در یک پروژه و برای تست استفاده کردم این مشکل به وجود نیومد اما وقتی یونیتی که کامپوننت های دیتابیس داخلش هست به DBgrid داخل یونیت های پروژه ام متصل میشه همه چی بهم میریزه

در ضمن هیچ کدی در رویداد های مربوط به پایگاه داده و گرید وجود نداره

107717
107716
(هر بخش مثل آموزشگا ها و دانش آموزان و .. به صورت Frame هستند)

تشکر

BORHAN TEC
دوشنبه 31 تیر 1392, 12:03 عصر
سلام
گریدی که به طور پیش فرض در دلفی وجود داره زیاد قابل اعتماد نیست. مطمئن هستم که اگر خاصیت bidimode مربوط به DBGrid رو به bidiLeftToRight تغییر بدین این مشکل به وجود نمیاد. درسته؟ :چشمک: فکر می کنم که این مشکل در XE4 حل شده باشه ولی کامل تست نکرده ام. من پیشنهاد می کنم که از یک گرید دیگه مثل xDBGrid یاEhLib DBGrid استفاده کنید. از اونجایی که EhLib خیلی معروفتره و فعالسازهای اون خیلی راحت پیدا میشه از اون استفاده کنید.
موفق باشید...

عقاب سیاه
دوشنبه 31 تیر 1392, 12:42 عصر
ممنون


مطمئن هستم که اگر خاصیت bidimode مربوط به DBGrid رو به bidiLeftToRight تغییر بدین این مشکل به وجود نمیاد. درسته؟ :چشمک: فکر می کنم که این مشکل در XE4 حل شده باشه ولی کامل تست نکرده ام

دقیقا همین جوره :(
اخه این دیگه چه وضعشه؟ ادم این جوری از دلفی سیر میشه من حدود 50 تا گرید دارم یعنی راهی چز عوض کردنشون نیست؟ برای عوض کردنشون راهی سریع تری جز عوض کردن دستی نیست؟ مثلا از داخل فایل Dfm و و عوصض کردن کلاس گرید معمولی به یکی از گرید هایی که پیشنهاد کرید؟

بازم ممممنون

BORHAN TEC
دوشنبه 31 تیر 1392, 13:00 عصر
اخه این دیگه چه وضعشه؟
واقعاً همینطوره، ولی تجربه ای شد که بعداً این اشتباه رو نکنید. :لبخندساده:

برای عوض کردنشون راهی سریع تری جز عوض کردن دستی نیست؟ مثلا از داخل فایل Dfm و و عوصض کردن کلاس گرید معمولی به یکی از گرید هایی که پیشنهاد کرید؟
اول از همه از پروژه Backup بگیرید. EhLib رو نصب کنید. فایلهای DFM و Pas رو با Notepad باز کنید و به جای TDBGrid بنویسید TDBGridEh. انجام کل این کارها در بدترین حالت برای 50 گرید بعید میدونم بیشتر از 1 ساعت طول بکشه.