PDA

View Full Version : علامت منفی در DBEdit



V60
سه شنبه 24 مهر 1386, 20:52 عصر
سلام
تو سایت جستجو کردم ولی پیدا نکردم
اگر برای dbedit خاصیت BiDiMode را بر روی bdRightToLeft قرار بدهیم نمایش فیلد عددیه مرتبط را به صورت عدد فارسی نشان خواهد داد ، ولی اگر بخواهیم یک عدد منفی را وارد کنیم ، در نمایش مشکل پیش می اید و به جای اینکه علامت منفی سمت چپ عدد قرار بگیرد سمت راست آن قرار می گیرد ، من چه بکنم که هم نمایش فارسی داشته باشم هم علامت منفی سمت چپ قرار بگیرد ( چون اگر نمایش راانگلیسی کنیم مشکل حل می شود )

Mohammad_Mnt
چهارشنبه 25 مهر 1386, 18:10 عصر
http://barnamenevis.org/forum/showthread.php?t=49543

V60
یک شنبه 29 مهر 1386, 15:26 عصر
سلام
اقا محمد من تنظیمات را در کنترل پنل ویندوز انجام دادم ولی نشد؟
من از dbedit استفاده می کنم ، اون لینکی هم که در پستی که اینجا لینکش را داده اید ، گذاشته اید نتوانستم بازش کنم ، البته نوع فیلدهای من integer است و یا double از جداول اکسس هم استفاده می کنم .
لطفا راهنمایی کنید

Mohammad_Mnt
یک شنبه 29 مهر 1386, 23:59 عصر
خاصیت Currency فیلدتون True است ؟

پ.ن : باید از فیلدهای Currency استفاده کنید ( توی MSSQL اسمش money است، توی اکسس را نمی‌دونم )

dkhatibi
دوشنبه 30 مهر 1386, 06:57 صبح
من هم این مشکلو دارم. تا حالا از چپ به راست استفاده می کردم.

عقاب سیاه
شنبه 11 خرداد 1392, 21:53 عصر
درود
میدونم تاپیک فوق قدیمیه شرمنده
ولی همه جستجوهام به این جا ختم شد که اینم حل نشده
اساتید راهی بلد نیستن؟

gholami146
شنبه 11 خرداد 1392, 22:03 عصر
آیا تا به حالا کسی از دوستان از رویداد OndataDraw استفاده کرده تا خودش این رویداد رو بصورت دستی در فیلد های مورد نظر مدیریت کنه

omran.av
شنبه 11 خرداد 1392, 22:33 عصر
سلام
این روش یکم ساده اس. شاید بکارت اومد.
function MinusProblem(N: Real): string;
begin
if N < 0 then
result := Format('%f-',[N * -1])
else
result := Format('%f',[N]);
end;

عقاب سیاه
شنبه 11 خرداد 1392, 22:42 عصر
ممنون
مطمئنید کدتون صحیحه؟
فکر کنم این جوری محاسبات بعدی بهم میریزه چون اون عدد - بوده و حالا رشته شده و به نظرم پاک کردن صورت مسئله باشه البته اگه درست متوجه شده باشم!

omran.av
شنبه 11 خرداد 1392, 23:51 عصر
ممنون
مطمئنید کدتون صحیحه؟
فکر کنم این جوری محاسبات بعدی بهم میریزه چون اون عدد - بوده و حالا رشته شده و به نظرم پاک کردن صورت مسئله باشه البته اگه درست متوجه شده باشم!

بله کد که درسته.
خوب شما فقط فیلد رو واسه نمایش میخواید نه محاسبه. اگه بخواین تو محاسبه ازش استفاده کنید متن داخل کامپوننت مثلا edit رو بگیرین و عکس روش بالا رو روش اعمال کنید.

البته این روش که من میگم راه حل درستی نیست. ولی خوب بعضی مواقع کار آدمو راه میندازه.

عقاب سیاه
دوشنبه 13 خرداد 1392, 14:33 عصر
ممنون
یعنی راحی واسه درست کردن نحوه نمایش توی گرید وجود نداره؟

یوسف زالی
دوشنبه 13 خرداد 1392, 15:00 عصر
سلام.
جسابدارا معمولا منفی ها رو در پرانتز نشون می دن.

BORHAN TEC
دوشنبه 13 خرداد 1392, 15:58 عصر
سلام


یعنی راحی واسه درست کردن نحوه نمایش توی گرید وجود نداره؟
راه های مختلفی وجود داره. پر کاربردترینش اینه که روی DataSet کلیک راست کرده و Field Editor رو انتخاب کنید. حالا در پنجره ای که باز میشه روی لیستش کلیک راست کنید و Add Fileds رو انتخاب کنید و فیلدهای مورد نظرتون رو به لیست اضافه کنید. حالا اگه روی یکی از فیلدها کلیک کنید و به Event ها نگاه کنید. می بینید که دو تا event با نامهای OnGetText و OnSetText داره که می تونید از اونها استفاده کنید. همانطور که مشخصه کاربرد OnGetText موقعی است که اطلاعات از پایگاه داده خوانده میشه و کاربرد OnSetText موقعی است که اطلاعات می خواهد در پایگاه داده نوشته شود.
موفق باشید...

عقاب سیاه
دوشنبه 13 خرداد 1392, 17:48 عصر
سلام.
جسابدارا معمولا منفی ها رو در پرانتز نشون می دن.

ممنون ولی فکر کنم پرانتز بازم محاسباتا بهم میریزه چون اصولا فیلد مبلغ عددی هست و روش محاسبات مستقیم صورت میگیره




سلام

راه های مختلفی وجود داره. پر کاربردترینش اینه که روی DataSet کلیک راست کرده و Field Editor رو انتخاب کنید. حالا در پنجره ای که باز میشه روی لیستش کلیک راست کنید و Add Fileds رو انتخاب کنید و فیلدهای مورد نظرتون رو به لیست اضافه کنید. حالا اگه روی یکی از فیلدها کلیک کنید و به Event ها نگاه کنید. می بینید که دو تا event با نامهای OnGetText و OnSetText داره که می تونید از اونها استفاده کنید. همانطور که مشخصه کاربرد OnGetText موقعی است که اطلاعات از پایگاه داده خوانده میشه و کاربرد OnSetText موقعی است که اطلاعات می خواهد در پایگاه داده نوشته شود.
موفق باشید...

خیلی ممنون
بازم فکر کنم این جوری دارم دیتا را دستکاری میکنم (که نمی خوام دیتا دستکاری شه چون روش محاسبات صورت میگیره) در صورتی که مشکل از گریده و نمایش اون

عقاب سیاه
دوشنبه 13 خرداد 1392, 17:53 عصر
این جوری که همه استاتید راهنمایی کردن فکر کنم باید اطلاعات نمایشی و اطلاعاتی که قصد محاسبات را دارم جدا دریافت کنم و اون منفی را در اطلاعات نمایشی تصحیح کنم فقط
این راه درسته؟؟

یوسف زالی
دوشنبه 13 خرداد 1392, 18:37 عصر
نخیر.
استفاده از GetText ابدا داده شما رو به هم نمی زنه.
شی فیلد های دیتاست دو تا خصیصه داره: متن و مقدار
Text و Value
شما می تونی با Value حساب کتابت رو انجام بدی و با Text چیز دیگه ای نشون بدی. مثلا سه رقم سه رقم اعداد جدا بشن اما باز هم قابلیت محاسبه داشته باشند.
البته همه اینهایی که گفتم در گرید خودش رو بهتر نشون می ده. در اشیایی مثل دی بی ادیت یکم داستان پیش میاد.
موفق یاشید.