2017-06-29 199 views
0

我是新來的Visual Basic,我想更改Button的邊框顏色,但我沒有看到在IDE(Visual Studio 2017)中執行此操作的任何選項。有沒有辦法做到這一點?如何更改Button的邊框顏色?

回答

2

這樣做的方式並不十分明顯,因爲默認Button不允許有彩色邊框。

首先,您必須將ButtonFlatStyle屬性設置爲FlatStyle.Flat。然後,您必須將ButtonFlatAppearance.BorderColor屬性設置爲您選擇的顏色。

您可以在Visual Studio窗體設計器兩者都做的那些事,如果你願意,也可以做到這一點在這樣的代碼:

Button1.Flatstyle = FlatStyle.Flat 
Button1.FlatAppearance.BorderColor = Color.Yellow 
2

你可以做,這是幾種不同的方式。一個選項(快速和容易)是繼承System.Windows.Forms.Button類,然後重寫OnPaint方法...

例如:

Protected Overrides Sub OnPaint(ByVal pevent As System.Windows.Forms.PaintEventArgs) 
     MyBase.OnPaint(pevent) 
     Dim rect As New Rectangle(0, 0, Me.Width, Me.Height) 
     Dim mPen As New Pen(Color.Red, 3) 
     pevent.Graphics.DrawRectangle(mPen, rect) 
    End Sub 

另一種選擇是創建您自己的按鈕控制,這需要時間,您可以從中受益更多,因爲您可以更好地控制自己想要做的事情。如果您的按鈕的FlatStyle屬性設置爲「平」你可以改變FlatApperance財產設計師如邊框大小等..

1
Button1.BorderColor = Drawing.Color.Red 
-1

你也可以繼承System.Windows.Forms.Button類,然後創建自己通過重寫這樣的OnPaint保護方法:

Protected Overrides Sub OnPaint _ 
(ByVal pevent As System.Windows.Forms.PaintEventArgs) 
    MyBase.OnPaint(pevent) 
    Dim rect As New Rectangle(0, 0, Me.Width, Me.Height) 
    Dim mypen As New Pen(Color.Green, 5) 
    pevent.Graphics.DrawRectangle(mypen, rect) 
End Sub 

但是,如果你的按鈕的FlatStyle屬性設置爲「平」,您可以在設計師改變FlatApperance屬性,如邊界大小,邊框顏色等