View Full Version : سوال: استفاده از کامپوننت Tnt در دلفی 2007
solook
پنج شنبه 21 شهریور 1387, 11:03 صبح
با سلام
همینطور که می دونید برنامه هایی که با دلفی 7 نوشته میشن در تنظیمات Regional and Language Options همباید در قسمت time و data فارسی تنظیم باشه هم در قسمت Unicode..
که اگر از کامپوننت tnt استفاده کنیم دیگر نیاز نیست که قسمت یونیکد تنظیم زبان فارسی باشه اما اگر قسمت data و time تنظیم نباشه باز فونت ها به هم میخوره.
اما در دلفی 2006 به بالا ظاهرا نیازی نیست که در قسمت time و data تنظیم فارسی باشه ..
تنها می مونه تنظیمات یونیکد که به فارسی باید تنظیم بشه .
قائدتا باید با استفاده از کامپوننت های یونیکد مثل TNT این مشکل حل بشه اما وقتی من از این کامپوننت استفاده میکنم تنظیمات فونت باز به هم می خوره ..
مشکل از کجاست؟
vcldeveloper
پنج شنبه 21 شهریور 1387, 12:04 عصر
یونی کد برای کارکترهای فارسی زمانی درست عمل میکنه که فونت شما هم از زبان مورد نظرتان پشتیبانی کنه. بطور پیش فرض فونت های استاندارد ویندوز (مثل Arial, Tahoma و...) فقط زبان انگلیسی را پشتیبانی می کنند، غیر از اینکه زبان مورد نظرتان را در ویندوز - از طریق Regional Settings - نصب کنید، و فونت های مربوطه به نسخه ایی که زبان فارسی را پشتیبانی می کند، تغییر کنند.
solook
پنج شنبه 21 شهریور 1387, 13:48 عصر
پس باید از فونت های فارسی استفاده کنم ؟
solook
پنج شنبه 21 شهریور 1387, 15:38 عصر
البته یک نکته ای که هست اینه که :
هر چیزی که با دلفی نوشته باشم مانند لیبل ها و باتن ها به هم نمیریزن اما چیزهایی که از دیتابیس میگیره مانند نود های treeview و memo به هم میزیزه...
پس مسئله مربوط به فونت نمیشه چون بعضیش کار میکنه
vcldeveloper
جمعه 22 شهریور 1387, 02:25 صبح
چه دیتابیسی؟!
solook
جمعه 22 شهریور 1387, 07:59 صبح
Sqlite
البته من اول اطلاعات دیتابیس در متغیر string میریزم و بعد منتقل میکنمشون یه treeviwe و memo .
اما اینبار بجا این متغیرها از خود Dbmemo استفاده کردم و اطلاعات اون رو به treeviwe که دادم خوب شد..
حالا چه نوع متغیری باید معرفی کنیم که به خراب نشه ؟
vcldeveloper
جمعه 22 شهریور 1387, 17:35 عصر
من با SQLLite کار نکردم، ولی می تونید WideString را امتحان کنید.
solook
جمعه 22 شهریور 1387, 17:37 عصر
فایده نداشت ..
راستی برای پیام های که برنامه میده از چه راهی استفاده کنم ؟ در این هم از WideString استفاده کردم فاید نداشت..
خود tnt ابراز TntForm هم داره چنین چیزی برای massege هم داره؟
vcldeveloper
جمعه 22 شهریور 1387, 17:55 عصر
راستی برای پیام های که برنامه میده از چه راهی استفاده کنم ؟
یعنی پیام های برنامه هم فارسی نیست؟! اگر نیست که مشکل از همون تنظیمات ویندوز هست.
solook
جمعه 22 شهریور 1387, 17:57 عصر
وقتی از کامپوننت یونیکد استفاده میکنیم یعنی دیگه لازم نیست تنظیمات فارسی ویندوز صورت بگیره..
مگه غیر اینه؟
vcldeveloper
جمعه 22 شهریور 1387, 18:16 عصر
وقتی از کامپوننت یونیکد استفاده میکنیم یعنی دیگه لازم نیست تنظیمات فارسی ویندوز صورت بگیره..
مگه غیر اینه؟بستگی داره، گفتم که باید از بابت فونت هم مطمئن باشید که مشکل نداشته باشه.
از طرفی، وقتی در دلفی (غیر از دلفی 2009 که خودش کامل از یونیکد پشتیبانی میکنه) می خواید برنامه یونی کد باشه، هیچ جا نباید از string استفاده کنید، نه خودتون مستقیما، نه هیچ کدوم از کامپوننت هایی که استفاده کردید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.