Problema con un Status Bar

12/07/2005 - 11:36 por fcojmo | Informe spam
Buenos dias: Tengo un problema al intentar redimensionar el tamaño de
los paneles de un status bar. Supongo que se será algun detalle tonto
que no veo.

Código en el Form Load ' Funciona estupendamente
With stbBarra
.Panels.Add("Mensaje")
.Panels.Add("Insertar")
.Panels.Add("BloqueDesplazamiento")
.Panels.Add("BloqueNumerico")
.Panels.Add("Fecha")
.Panels.Add("Hora")
.Panels.Add("Logo")
.ShowPanels = True
End With
With stbBarra.Panels(cnsPanelInsertar)
.MinWidth = 0
.Width = 0
End With
With stbBarra.Panels(cnsPanelBloqueDesplazamiento)
.MinWidth = 0
.Width = 0
End With
With stbBarra.Panels(cnsPanelBloqueNumerico)
.MinWidth = 0
.Width = 0
End With
With stbBarra.Panels(cnsPanelFecha)
.MinWidth = 0
.Width = 0
End With
With stbBarra.Panels(cnsPanelHora)
.MinWidth = 0
.Width = 0
End With
With stbBarra.Panels(cnsPanelLogo)
.Text = ""
.Style = StatusBarPanelStyle.Text
.Icon = CType(Recursos.GetObject("Fenix"), Icon)
.MinWidth = 0
.Width = .Icon.Width
End With

Código en el Form Resize ' Falla
For j = cnsNumeroIndicePanelInsertar To
cnsNumeroIndicePanelLogo
stbBarra.Panels(cnsNumeroIndicePanelMensaje).Width -stbBarra.Panels(j).Width
Next

Genera una excepcion: El indice esta fuera de intervalo. Debe ser un
valor no negativo y menor que el tamaño de la coleccion.


Agradecería cualquier sugerencia.
 

Leer las respuestas

#1 Alex
12/07/2005 - 13:01 | Informe spam
Hola.

Aquí tienes un pequeño ejemplo para cambiar el tamaño de todos los paneles
de un StatusBar

Dim MiPanel As StatusBarPanel
For Each MiPanel In Me.StatusBar1.Panels
MiPanel.Width = 500
Next

Cambia el 500 por el número o los cálculos que necesites.

Genera una excepcion: El indice esta fuera de intervalo. Debe ser un
valor no negativo y menor que el tamaño de la coleccion.



Comprueba que cnsNumeroIndicePanelInsertar y cnsNumeroIndicePanelLogo son
índices válidos en la colección de paneles. Los índices de las colecciones
van de 0 a NumeroDeElementos - 1.

Saludos

Preguntas similares