• Domingo 22 de Diciembre de 2024, 08:52

Autor Tema:  Statusbar  (Leído 2394 veces)

Sagma

  • Miembro MUY activo
  • ***
  • Mensajes: 390
  • Nacionalidad: bo
    • Ver Perfil
Statusbar
« en: Miércoles 7 de Julio de 2004, 16:57 »
0
Hola a todos:

Hola quisiera saber como se hace para que en el statusbar poner la fecha o la hora en panels diferentes?

y como se hace para que los panels del statusbar esten ubicados al lado derecho  :) .

Utilizo el Visual Basic .NET 2003

Gracias

Sagma
Sagma

sergiotarrillo

  • Moderador
  • ******
  • Mensajes: 1059
    • Ver Perfil
    • http://sergiot2.com/blog
Re: Statusbar
« Respuesta #1 en: Martes 13 de Julio de 2004, 06:52 »
0
Hola yo lo hice en el .Net 2002, supongo que debe ser lo mismo aqui esta el codigo.

Agregas en tiempo de diseño el StatusBar, yo lo puse de nombre: stBarTimeDate

Declaras dos variables globales en la clase del formulario:
Código: Text
  1. Private PanelTime As New StatusBarPanel()
  2.     Private PanelDate As New StatusBarPanel()
  3.  
  4.  

En el Evento que carga el formulario(Form_Load) colocas esto:
Código: Text
  1.         'caragando los satatus panel para la hora
  2.         PanelTime.BorderStyle = StatusBarPanelBorderStyle.Sunken
  3.         PanelTime.AutoSize = StatusBarPanelAutoSize.Spring
  4.         PanelTime.Alignment = HorizontalAlignment.Right
  5.  
  6.         'cargando los Status para la Fecha
  7.         PanelDate.BorderStyle = StatusBarPanelBorderStyle.Raised
  8.         PanelDate.ToolTipText = System.DateTime.Today.ToShortDateString()
  9.         PanelDate.Text = System.DateTime.Today.ToLongDateString()
  10.         PanelDate.AutoSize = StatusBarPanelAutoSize.Contents
  11.  
  12.         'llenandolos al statusBar
  13.         stBarTimeDate.ShowPanels = True 'para q muestre varios paneles
  14.         stBarTimeDate.Panels.Add(PanelTime)
  15.         stBarTimeDate.Panels.Add(PanelDate)
  16.  
  17.         'para que cambie la hora y la fecha
  18.         TmrStatus.Start()
  19.  
  20.  
  21.  

Para que la hora cambien constatemente en el statusBar tienes que usar un timer y su evento tick pones esto:
Código: Text
  1.         Dim myTime As String = ""
  2.         Dim myState As String = " "
  3.         Dim myHor As Integer
  4.         Dim myMin As String
  5.         Dim mySec As String
  6.  
  7.         With Now()
  8.             myHor = IIf(.Hour > 12, .Hour Mod 12, .Hour)
  9.             myState += IIf(.Hour >= 12, "p", "a") & ".m. "
  10.             myMin = IIf(.Minute > 10, "", "0") & .Minute
  11.             mySec = IIf(.Second > 10, "", "0") & .Second
  12.  
  13.             myTime += myHor & ":" & myMin & ":" & mySec & myState
  14.         End With
  15.         PanelTime.Text = myTime
  16.  
  17.  
  18.  

Si quieres ser mas estricto, el cargado de la fecha, tambien deberias hacerlo en el timer, si una aplicacion va estar abierta por varios dias seguidos no cambiara al estar cargado en el Load, tiene que estar cargado en el timer....
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.


Sergio Tarrillo
Blog]miBlog[/url]

No me visiten!

Sagma

  • Miembro MUY activo
  • ***
  • Mensajes: 390
  • Nacionalidad: bo
    • Ver Perfil
Re: Statusbar
« Respuesta #2 en: Sábado 17 de Julio de 2004, 15:10 »
0
Gracias Serghio, funciono de mil maravillas,

atentamente

Sagma  :kicking:
Sagma