PDA

View Full Version : تغییر font,style,align در زمان اجرا



komail_sh
جمعه 15 اردیبهشت 1385, 00:39 صبح
مشکل من اینه که میخوام در زمان اجرا فونت و ... را تغییر دهم
یعنی فونت گزارش توسط کاربر مشخص میشه
لطفا کمک کنید
ممنون

Seivan
دوشنبه 18 اردیبهشت 1385, 11:54 صبح
اگر در RunTime از Class مربوط به گزارش Object می سازید می توانید به فیلد مورد نظر در runtime دسترسی پیدا کرده و خاصیت مربوط به آنرا تغییر دهید: مثلا اگر نام گزارشتان Rpt می باشد و در آن فیلد a نمایش داده می شود. و شی rpt1 از آنرا ایجاد نموده اید کد زیر را می توانید به آن اضافه نمایید:

rpt1.DataDefinition.Feilds["a"].Font = font1

Seivan
دوشنبه 18 اردیبهشت 1385, 11:59 صبح
راه حل دیگر استفاده از پارامتر است. مثلا پارامتری عددی برای اندازه فونت انتخاب شده ، پارامتری رسته ای برای face فونت انتخاب شده و ...
که در گزارش font شی انتخاب شده را می توانید از این پارامترها بخوانید.
روی شی کلیک راست کرده گزینه font را انتخاب و جلوی فونت به جای انتخاب از فونت های موجود فونت را توسط فرمول انتخاب کنید.
در Runtime نیز پارامترهایمربوط به face ، اندازه ، ... را برای گزارش پاس کنید.

Sharif Lotfi
دوشنبه 18 اردیبهشت 1385, 13:40 عصر
برای تعیین مشخصات یه فونت (name,size,style) توی گزارش با کد نویسی این کارهایی که میگم رو انجام بده . اگه جواب نگرفتی بهم ایمیل بزن .
در ابتدا متغیر rp را از نوع list_report (نام فرم گزارش طراحی شده) تعریف کن
Dim rp As list_report = New list_report

فرض می کنیم یه TextObject توی محیط طراحی گزارشت اضافه کردی به اسم Text1
کد زیر را برای کار با مشخصات فونت Text1 در یه جای مناسب بنویس
Dim txt1 As CrystalDecisions.CrystalReports.Engine.TextObject
txt1 = rp.ReportDefinition.ReportObjects("Text1")
txt1.Text = "متن نمونه"
Dim myFontStyle As FontStyle
myFontStyle = FontStyle.Regular
Dim myfont As Font = New Font(font_name,font_size,myFontStyle,GraphicsUnit. Pixel)
txt1.ApplyFont(myfont)
در انتهای کار هم وقتی همه تنظیمهای خط و باکس و فونت و ... تموم شد rp رو جایگزین کن.
CrystalReportViewer1.ReportSource = rp
البته باید حواست باشه با توجه به اینکه عرض و ارتفاع TextObject موقع طراحی یه چیزی تعریف میشه ممکنه فونتی که استفاده می کنی توی اون ابعاد نگنجه یا زیادی ریز باشه بنابر این باید ابعاد TextObject رو به تناسب ابعاد فونت تغییر بدی تا موقع نمایش گزارش زشت نشه. اگه مشکل پیدا کردی بگو تا اونم برات توضیح بدم.

komail_sh
جمعه 05 خرداد 1385, 22:25 عصر
خیلی ممنون
با استفاده از این مطالب تونستم مشکام حل کنم