براي شروع كار با GDI+ ابتدا يك پروژه جديد Windows Application باز كنيد. در اينجا ما پروژه را از نوع Visual Basic انتخاب كرديم كه بهتره شما هم از همين زبان استفاده كنيد گرچه تبديل كدها به زبان C# يا بقيه زبانهايي كه از كلاسهاي .Net Framework استفاده مي كنند اصلا كار سختي نيست !
حالا قصد داريم يك شيء گرافيكي (يا همان صفحه نقاشي!) آماده كنيم كه بعدا بتوانيم بر روي آن اشكال گرافيكي خود را ترسيم كنيم. براي اين كار من دو روش را توضيح مي دهم:
1. ترسيم بر روي Form : در اين روش از رويداد Paint فرم استفاده مي كنيم:
حالا متغييري با نام g داريم كه شيء گرافيكي ما مي باشد. توجه داشته باشيد كه پارامتر e به دليل اينكه از نوع System.Windows.Forms.PaintEventArgs است داراي خاصيت Graphics مي باشد. پس به عنوان مثال اين كد درون رويداد Load فرم داراي خطا مي باشد، چون در رويداد Load پارامتر e از نوع System.EventArgs است!
2. ترسيم بر روي عكس : در اين حالت يك متغيير از نوع Bitmap تعريف مي كنيم و ترسيمات گرافيكي خود را بر روي اين عكس انجام مي دهيم:
در اينجا ابتدا عكسي با طول و عرض 300 ايجاد كرده ايم و پس از آن شيء گرافيكي را به اين عكس نسبت مي دهيم.
در حالت اول ايجاد شيء گرافيكي در رويداد Paint انجام مي گيرد و تمام ترسيمات مستقيما بر روي زمينه Form اعمال مي شود ولي در حالت دوم مي توانيم شيء گرافيكي را هر كجا كه بخواهيم ايجاد كنيم و ترسيمات نيز بر روي عكس (متغيير تعريف شده از نوع Bitmap) اعمال مي شود و براي نمايش مي توانيم آن را در يك Picturebox يا هر جاي ديگري كه بتوان عكس قرار داد، نمايش دهيم.
---
موفق باشيد
حالا قصد داريم يك شيء گرافيكي (يا همان صفحه نقاشي!) آماده كنيم كه بعدا بتوانيم بر روي آن اشكال گرافيكي خود را ترسيم كنيم. براي اين كار من دو روش را توضيح مي دهم:
1. ترسيم بر روي Form : در اين روش از رويداد Paint فرم استفاده مي كنيم:
کد:
PrivateSub Form1_Paint(ByVal sender AsObject, ByVal e As System.Windows.Forms.PaintEventArgs) HandlesMe.Paint Dim g As Graphics = e.GraphicsEndSub
2. ترسيم بر روي عكس : در اين حالت يك متغيير از نوع Bitmap تعريف مي كنيم و ترسيمات گرافيكي خود را بر روي اين عكس انجام مي دهيم:
کد:
Dim bmp AsNew Bitmap(300, 300)Dim g As Graphics = Graphics.FromImage(bmp)
در حالت اول ايجاد شيء گرافيكي در رويداد Paint انجام مي گيرد و تمام ترسيمات مستقيما بر روي زمينه Form اعمال مي شود ولي در حالت دوم مي توانيم شيء گرافيكي را هر كجا كه بخواهيم ايجاد كنيم و ترسيمات نيز بر روي عكس (متغيير تعريف شده از نوع Bitmap) اعمال مي شود و براي نمايش مي توانيم آن را در يك Picturebox يا هر جاي ديگري كه بتوان عكس قرار داد، نمايش دهيم.
---
موفق باشيد



پیوند ها