La Web del Programador: Comunidad de Programadores
 
    Pregunta:  2662 - SIMULAR COMPORTAMIENTO DE SPLLITERS DE VISUAL C EN VISUAL B
Autor:  Francisco Gómez Gómez
Como se puede simular el comportamiento de ventanas splitters de Visual C.
Quiero modificar el tamaño, en tiempo de ejecucion de un frame en Visual Basic.

SI alguien conoce algun control o sabe alguna manera de hacerlo le estaria muy agradecido

  Respuesta:  hernan casadesus
hola, aca va un pequeño ejemplo, pero por las dudas si no te llega bien, decime una direccion y te lo mando.

Tenemos un Form1 con 2 picturebox llamados picture1 y picture2.

Codigo:
------
Private split As New CSplitter

Private Sub Form_Load()

´ Definir el divisor
split.Create LeftControl:=Picture1, _
RightControl:=Picture2, _
Vertical:=True, _
BorderPixels:=4, _
AutoBorder:=True, _
Resizeable:=True, _
Percent:=35
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
split.Splitter_MouseDown Button, Shift, X, Y
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
split.Splitter_MouseMove Button, Shift, X, Y
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
split.Splitter_MouseUp Button, Shift, X, Y
End Sub

Private Sub Form_Resize()
split.Resize
End Sub

ahora el trabajo de verdad: una clase llamada csplitter.

codigo:
-------

Option Explicit

´ Gracias a Elliott Whitticar y a Vadim Katsman que corrigieron errores
´ y sugirieron mejoras a mis clases CHSplitter y CVSplitter. He integrado
´ parte de su código, pero no he resuelto todos los posibles problemas del
´ divisor. La principal mejora (implementada de forma independiente tanto
´ por Elliot como por Vadim) consite en combinar los divisores vertical
´ y horizontal en una única clase. Gracias.

´ Variable