Ver Mensaje Individual
  #2 (permalink)  
Antiguo 07-07-2008, 06:25:54
acalanto acalanto is offline
Moderador
 
Registrado: dic 2002
Ubicación: Madrid
Posts: 4.271
acalanto ha deshabilitado la reputación
Predeterminado Re: Cambiar color de Barra de Título

No se puede cambiar. Lo que si puedes hacer es confeccionarte una barra de título y botones personalizados con controles PictureBox.

-Inserta un formulario en el proyecto y pon el BorderStyle=None
-Inserta un PictureBox en la parte superior del formulario con una altura de barra de título y que ocupe toda la amplitud del formulario. Pon un nombre apropiado; p. Ej. BarTitle
-En el evento resize del form añade este código:

Código:
 
    me.Bartitle.Width = me.width
-En el evento Load del form añade este código

me.Bartitle.Print "Texto de la barra de título del formulario"

En un módulo público declara como mínimo las siguientes funciones y constantes API Windows.

Código:
 
    Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
    Public Declare Function ReleaseCapture Lib "user32" () As Long
 
    'Constantes API Releasecapture y SendMessage
    Public Const RGN_OR = 2
    Public Const WM_NCLBUTTONDOWN = &HA1
    Public Const HTCAPTION = 2

-Para poder desplazar el formulario tienes que capturar el evento MouseDown de tu barra de título y notificar a windows el desplazamiento del formulario.


Código:
 
Private Sub BarTitle_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
        ReleaseCapture
        SendMessage Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End Sub

Esto es lo básico para crear una barra de título de formulariuo personalizada. Ahora depende de ti si quieres poner botones de minimizar,maximizar y cerrar. Los puedes crear con más controles PictureBox y usar los eventos del Mouse para codificar sus acciones.


Espero que lo pruebes y te resulte útil para tus propósitos.
__________________
Un cordial saludo
-Acalanto-

Madrid - España

Visual Basic
Videos Programacion
Foro Programacion
Tutoriales Programacion
Responder Con Cita