CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Statusbar
(1/1)
Sagma:
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
sergiotarrillo:
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 ---Private PanelTime As New StatusBarPanel() Private PanelDate As New StatusBarPanel()
En el Evento que carga el formulario(Form_Load) colocas esto:
--- Código: Text --- 'caragando los satatus panel para la hora PanelTime.BorderStyle = StatusBarPanelBorderStyle.Sunken PanelTime.AutoSize = StatusBarPanelAutoSize.Spring PanelTime.Alignment = HorizontalAlignment.Right 'cargando los Status para la Fecha PanelDate.BorderStyle = StatusBarPanelBorderStyle.Raised PanelDate.ToolTipText = System.DateTime.Today.ToShortDateString() PanelDate.Text = System.DateTime.Today.ToLongDateString() PanelDate.AutoSize = StatusBarPanelAutoSize.Contents 'llenandolos al statusBar stBarTimeDate.ShowPanels = True 'para q muestre varios paneles stBarTimeDate.Panels.Add(PanelTime) stBarTimeDate.Panels.Add(PanelDate) 'para que cambie la hora y la fecha TmrStatus.Start()
Para que la hora cambien constatemente en el statusBar tienes que usar un timer y su evento tick pones esto:
--- Código: Text --- Dim myTime As String = "" Dim myState As String = " " Dim myHor As Integer Dim myMin As String Dim mySec As String With Now() myHor = IIf(.Hour > 12, .Hour Mod 12, .Hour) myState += IIf(.Hour >= 12, "p", "a") & ".m. " myMin = IIf(.Minute > 10, "", "0") & .Minute mySec = IIf(.Second > 10, "", "0") & .Second myTime += myHor & ":" & myMin & ":" & mySec & myState End With PanelTime.Text = myTime
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....
Sagma:
Gracias Serghio, funciono de mil maravillas,
atentamente
Sagma :kicking:
Navegación
Ir a la versión completa