# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > VB.NET >  تغییر شکل کنترل Button

## sm4899

سلام

دوستان آیا تغییر شکل کنترلی مثل Button به مثلث یا چند ضلعی یا گرد
وجود داره ؟

----------


## saeed_rezaei

سلام. 
شما می تونید تمامی کنترلهای مورد نظرتون رو از حالت چهار گوش خارج کنید و به شکل دیگه ای قرار بدید. 
هر کنترلی دارای یه فضایی نمایش هست که محدوده کنترل رو مشخص می کنه. به این فضا می گن region
شما می تونیى برای یک کنترل یک region جدید برای کنترلتون بسازید. به این صورت 

mycontrol.region=new region (graphicpath)


graphicpath یک مسیر گرافیکی است که محدوده کنترل رو مشخص می کنه. به صورت زیر می تونید یک graphicpath ایجاد کنید. 

dim gp as new drawin2d.graphicpath

graphicpath دارای متدهایی جهت ساخت، مربع، چند ظلعی ، دایره، بیضی و ترسیم رشته هست. برای ترسیم هر کدوم از شکلها بایستی متدش رو به کار ببرید. برای مثال اگه بخواید که به صورت دایره ای باشه می نویسید: 

gp.addcircle (...)

حالا پارامترهاش یادم نیست. اما یه کمی توی msdn مطالعه کنید کل متدهاش رو یاد می گیرید.

----------


## __H2__

سلام
راه ها و ترفندهای بهتر و راحت تر هم دارد!
کافیست FlatStyle و UseVisualStyleBackColor همان Button معمولی را از property هایش خاموش کنید و یک تصویر gif یا png را به عنوان تصویرپس ضمینه به Button بخورانید که این تصویر میتواند تصویر مثلث یا دایره یا ... باشد.

----------


## zarrin_306

این یکسری Dll  هستش

----------


## maryam_vb

سلام 

آقای saeed _rezaei من نتونستم از راه حل شما استفاده کنم .اگر امکانش هست یه برنامه که این کار رو انجام میده بزارید.

ممنون 

دوستانی که به جواب رسیدن لطفا راهنماییم کنید.

----------


## maryam_vb

سلام برنامه نویسان گرامی
 پس چرا جواب نمیدین ؟ کارم گیره .

----------


## amirsajjadi

با سلام
اینم یک مثال ساده برای تغییر شکل باتون به بیضی
Dim a AsNew Drawing2D.GraphicsPath
a.AddEllipse(0, 0, Button1.Width, Button1.Height)
Button1.Region = New Region(a)

----------

