PDA

View Full Version : سوال: چطوری این آیکن رو در Button بزاریم ؟



AliRezaBeytari
پنج شنبه 17 اسفند 1391, 16:18 عصر
سلام دوستان.
به این عکس نگاه کنید :
101060
چطوری میشه این آیکن رو در button گذاشت.
توجه : نمی خوام یه عکس از این آیکن بگیرم و اون رو درون button قرار بدم!

the king
پنج شنبه 17 اسفند 1391, 16:49 عصر
سلام دوستان.
به این عکس نگاه کنید :
101060
چطوری میشه این آیکن رو در button گذاشت.
توجه : نمی خوام یه عکس از این آیکن بگیرم و اون رو درون button قرار بدم!

این مثال رو امتحان کنید :

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button1.Text = "OK"
Button1.ImageAlign = ContentAlignment.MiddleLeft
Dim bmp As New Bitmap(16, 16)
Using g As Graphics = Graphics.FromImage(bmp)
g.Clear(Color.FromArgb(0, 0, 0, 0))
g.DrawIcon(SystemIcons.Shield, New Rectangle(0, 0, bmp.Width, bmp.Height))
Button1.Image = bmp
End Using
End Sub

AliRezaBeytari
پنج شنبه 17 اسفند 1391, 16:55 عصر
درسته ؛ کر میکنه.ولی یه مقدار کم کیفیته :
101063

the king
پنج شنبه 17 اسفند 1391, 17:08 عصر
درسته ؛ کر میکنه.ولی یه مقدار کم کیفیته :
101063

آیکونی که به عنوان منبع ازش استفاده شده، در ابعاد 32x32 ئه، وقتی ابعاد اش رو به 16x16 تغییر می دهیم کیفیت اش افت می کنه.
یا محو میشه یا دندونه دندونه. با g.InterpolationMode میشه تغییر اش داد اما محو میشه :

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button1.Text = "OK"
Button1.ImageAlign = ContentAlignment.MiddleLeft
Dim bmp As New Bitmap(16, 16)
Using g As Graphics = Graphics.FromImage(bmp)
g.Clear(Color.FromArgb(0, 0, 0, 0))
g.InterpolationMode = Drawing2D.InterpolationMode.High
g.DrawIcon(SystemIcons.Shield, New Rectangle(0, 0, bmp.Width, bmp.Height))
Button1.Image = bmp
End Using
End Sub


اگر بخواهید این اتفاق نیافته باید یک نمونه آیکونی که از ابتدا 16x16 پیکسلی است رو بکار ببرید.


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Button1.Text = "OK"
Button1.ImageAlign = ContentAlignment.MiddleLeft
Dim icn As New Icon(SystemIcons.Shield, New Size(16, 16))
Button1.Image = icn.ToBitmap()
End Sub