Declare Function DrawCaption Lib "user32" (ByVal hWnd As Long, _ ByVal hdc As Long, _ pcRect As RECT, _ ByVal un As Long) As Long
DrawCaption выводит надпись в заголовке формы
DC_ACTIVE = &H1 | Используется цвет активной формы |
DC_BUTTONS | Функция выводит кнопки на заголовке (Свернуть, Восстановить, Закрыть) |
DC_GRADIENT = &H20 | Функция использует COLOR_GRADIENTACTIVECAPTION (если установлен флаг DC_ACTIVE) или COLOR_GRADIENTINACTIVECAPTION для цвета заголовка. Если флаг не установлен, то функция использует COLOR_ACTIVECAPTION или COLOR_INACTIVECAPTION |
DC_ICON = &H4 | Функция выводит значок на заголовке |
DC_INBUTTON | Функция выводит заголовок как кнопку |
DC_SMALLCAP | Функция рисует маленький заголовок, используя текущий мелкий шрифт для заголовка |
DC_TEXT = &H8 | Функция рисует текст при выводе заголовка |
' Рисуем свой заголовок на форме ' Установите свойство BorderStyle равным 0 (None) ' Также может установить свои кнопки в правом углу Me.ScaleMode = vbPixels ' Установим ограничивающий прямоугольник ' для заголовка во всю ширину форму и высотой 25 пикселов SetRect r, 0, 0, Me.ScaleWidth, 25 ' Выводим созданный заголовок DrawCaption Me.hWnd, Me.hdc, r, DC_GRADIENT Or DC_ACTIVE Or DC_TEXT ' Следующий код служит ' для перемещения формы за заголовок Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Y > 25 Then Exit Sub Dim retval As Long If Button = 1 Then Call ReleaseCapture retval = retval = SendMessage(Me.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&) End If End Sub