如何将窗体上方的标题栏自定义

---------------------------------------------------------------

给你一个简单的思路。
首先把form的frmBorderstyle =None
,然后在title的地方加上一个图片。可以设置layout,使得窗体变化的时候保持在title的位置。

然后就是要处理使得窗体能够move,最小和最大画。
用API就可以了,比如。

我是那了一个label代替image的,看这个例子。

Public Class Form1
Inherits System.Windows.Forms.Form

Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer

Private Const WM_NCLBUTTONDOWN As Integer = &HA1
Private Const HTCAPTION As Integer = 2

Private Sub Label1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseDown
If e.Button = MouseButtons.Left Then
ReleaseCapture()
SendMessage(Me.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0)
End If

End Sub
是不是很像了;)

Published At
Categories with Web编程
Tagged with
comments powered by Disqus