|
فرم هايی با رنگهای بهتر
در بعضی از کامپوننت ها رويدادی به نام Paint وجود دارد که مسئول کشيدن شکل ظاهری کامپوننت است . شما می توانيد در اين رويداد کد های مخصوص خودتان را بنويسيد تا مثلا ً رنگ کامپيوننت را تغيير دهيد . بهترين مثال اين کامپوننت ها Form است . برای تست کردن ابتدا يک فرم به پروژه خود اضافه کنيد ، قبل از تعريف کلاس فرم اين سه خط را اضافه کنيد .
Imports System.Drawing Imports System.Drawing.Drawing2D Imports System.Drawing.Color
در سابروتين ِ Load ِ فرم اين خط را بنويسيد تا در صورت تغيير اندازه فرم کل آن دوباره کشيده شود .
Me.ResizeRedraw = True
حالا در رويداد Paint اين خطوط را بنويسيد .
Dim rect As New Rectangle(0, 0, Me.Width, Me.Height) Dim mBrush As New LinearGradientBrush(rect, Pink, _ BlueViolet, LinearGradientMode.ForwardDiagonal) e.Graphics.FillRectangle(mBrush, rect)
خط اول يک مستطيل را که اندازه آن برابر با اندازه فرم است تعريف می کند . خط دوم که ادامه اش در خط سوم آمده يک Brush از نوع LinearGradientBrush می سازد که در پارامتر اول آن مستطيلی که بايد بکشد مشخص می شود در پارامتر دوم و سوم دو رنگ که بايد در طول اين مستطيل به هم تبديل شود مشخص می شود و آخرين پارامتر مربوط به نوع تبديل اين دو رنگ است . خط سوم هم مستطيل تو پری با استفاده از اطلاعات قبلی می کشد . حالا برنامه را اجرا کنيد .
رويداد Paint در بعضی از کامپوننت های ديگر مثل Button نيز وجود دارد . يک Button بر روی فرم قرار دهيد و در رويداد Paint آن اين خطوط را بنويسيد .
Dim rect As New Rectangle(0, 0, Button1.Width, Button1.Height) Dim mBrush As New LinearGradientBrush(rect, Aqua, Blue, _ LinearGradientMode.BackwardDiagonal) Dim mBrush2 As New SolidBrush(Black) Dim myfont As New Font("Tahoma", 8, FontStyle.Regular) e.Graphics.FillRectangle(mBrush, rect) e.Graphics.DrawString("salam", myfont, mBrush2, 10, 10)
و سپس برنامه را اجرا کنيد .
|