用vs.net創建控件項目,其他的和vb類似...
為葉集等地區用戶提供了全套網頁設計制作服務,及葉集網站建設行業解決方案。主營業務為網站制作、成都做網站、葉集網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
新建項目-windows 窗體控件庫
Public Class UserControl1
#Region "變量"
Dim Down_Color As Color = Color.Blue
Dim UP_Color As Color = Color.Gray
Dim Mode As Short = 0
Dim flag As Boolean
Dim offset_X As Integer
Dim offset_Y As Integer
Dim Mouse_P As Point
#End Region
#Region "屬性"
'按下顏色
Public Property _DownColor As Color
Get
Return Down_Color
End Get
Set(ByVal value As Color)
Down_Color = value
End Set
End Property
'彈起顏色
Public Property _UpColor As Color
Get
Return UP_Color
End Get
Set(ByVal value As Color)
UP_Color = value
End Set
End Property
'滑動模式 0-橫 1-豎
Public Property _Mode As Short
Get
Return Mode
End Get
Set(ByVal value As Short)
Mode = value
End Set
End Property
#End Region
Private Sub UserControl1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Me.BackColor = UP_Color
End Sub
'鼠標按下
Private Sub UserControl1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
Me.BackColor = Down_Color
Mouse_P = e.Location
flag = True
End Sub
'鼠標移動
Private Sub UserControl1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove
If flag = False Then Exit Sub
Select Case Mode
Case 0 '橫向·
offset_X = e.X - Mouse_P.X
If Me.Location.X + offset_X + Me.Width = Me.ParentForm.Width Or Me.Location.X + offset_X = 0 Then
flag = False
Else
Me.Location = New Point(Me.Location.X + offset_X, Me.Location.Y)
End If
Case 1 '豎向·
offset_Y = e.Y - Mouse_P.Y
If Me.Location.Y + offset_Y + Me.Height + 30 = Me.ParentForm.Height Or Me.Location.Y + offset_Y = 0 Then
flag = False
Else
Me.Location = New Point(Me.Location.X, Me.Location.Y + offset_Y)
End If
End Select
End Sub
'鼠標彈起
Private Sub UserControl1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseUp
Me.BackColor = UP_Color
flag = False
End Sub
End Class
有兩種解決方法
在可視化編程中,控件屬性里的位置一欄可以設置絕對定位或相對定位,大小可以設置固定大小或相對大小。當設置成相對窗口改變時就能根據窗口大小改變控件位置和大小,但是這種方法只能按百分比改變控件大小和位置,不能大幅改變。
在代碼里改變,窗口改變大小時主程序里有相應的監聽回調方法,在那個方法中可以根據窗口不同的大小設置各個控件的大小和位置,這種方法更自由更全面,還可以設置控件的其他屬性。
把你的控件 繼承Panel類,而不要集成UserControl類。
你可以在集成Panel后,往Panel里面加一些你自己的方法或Control來實現你需要的功能。向里面拖控件的功能則由Panel來控制,你自己就不用管了。
嗯也是通過代碼進行寫的。相當于他是通過自己編寫的一個窗口一樣,通過繼承下來的。可以繼承各個的特點而形成了各色的控件,還可以通過控件而組合更強大的控制或者插件。
網站題目:vb.net控件開發,vb控件代碼
網站地址:http://vcdvsql.cn/article38/hssipp.html
成都網站建設公司_創新互聯,為您提供Google、網站策劃、建站公司、網站收錄、網頁設計公司、商城網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯