PDA

View Full Version : چگونگی کنترل تراز خطوط در یک MEMO



سیروس مقصودی
پنج شنبه 25 فروردین 1384, 18:56 عصر
باسلام

چگونه میتوان در یک MEMO حالتهای تراز از راست یا تراز از چپ یا تراز از وسط یا تراز از هر دو طرف را کنترل کرد (مانند WORD)

مثال
از راست از چپ از وسط از دو طرف
---------- ----------- ----------- ------------
----- ------- ------- ------------
-------- --------- --------- ------------

ma_mohsen
شنبه 27 فروردین 1384, 18:33 عصر
بنام دوست
سلام
سه تای اول خیلی ساده است
راست چین:

memo1.Alignment := taRightJustify;
چپ چین:

memo1.Alignment := taLeftJustify;
وسط چین:

memo1.Alignment := taCenter;
اما برای اینکه از دو طرف تراز شود هنوز من هیچی پیدا نکرده ام با اینکه خیلی جستجو کرده ام
البته راه حلی که استفاده کرده ام این است که از TwebBrowser استفاده کرده ام که طبعا HTML ای است و تراز از دو طرف دارد
اما آن هم مشکلات خاص خودش را دارد.

hr110
یک شنبه 28 فروردین 1384, 14:03 عصر
برای اینکه متن شما در Memo تراز بشه باید از متد TextWidth یک Canvas یک کنترل دیگر مانند Label که فونت آن دقیقاً مشابه Memo شما است باید استفاده کنید(چون Memo پرپرتی Canvas ندارد)
TextWidth عرض یک متن رو به شما میدهد، بنابراین به سادگی میتوانید عرض هر سطر را یافته و در صورت کوچک بودن از یک کاراکتر "ـ" استفاده کنید و بین کاراکترهایی که میتوان انها رو کشید استفاده کنید.

کمی فکر کنید مسئله حل خواهد شد. :)