subrutina para controlar la hora del sistema

Iniciado por pedraosone, 29 Febrero 2008, 15:39 PM

0 Miembros y 1 Visitante están viendo este tema.

pedraosone

hola a todos, como indico en el titulo del post nesesito que alguien me oriente sobre como hacer una rutina que, al darle a un boton,  me cambie la hora del sistema por  el texto que yo haya puesto en un textbox. supongo que sera por medio de apisy de eso yo no tengo idea asi que agradecere cualquier sugerencia
gracias por la ay ;Duda

cassiani

Citarcomo hacer una rutina que, al darle a un boton,  me cambie la hora del sistema por  el texto que yo haya puesto en un textbox

Prueba con esto, suponiendo que lo que coloques en un textbox sea una fecha valida:

Option Explicit

Private Sub Cambiar_Time(cadena As String)
On Error GoTo nError
    Time = Format(cadena, "hh:mm:ss AmPm")
    Exit Sub
nError:
  MsgBox "La hora introducida no es valida!!", vbCritical, "Error al actualizar la hora"
  Err = 0
End Sub

Private Sub CmdCambiarHora_Click()
    Cambiar_Time (Text1.Text)
End Sub

Private Sub Form_Load()
    Text1.Text = "11:06:00"
End Sub


¡S4lu2!

pedraosone

muchas gracias amigo
la verdad que me ha funcionado aunque me surge una duda:
abria forma de que en lugar del text1.text tenga este formato 11:30:00 pudiera tener por ejemplo la hora o los minutos solamente
por ejemplo asi "text1.text= 11" o esta otra "text1.text=30"
muchas gracias


naderST

Si te entendi quieres mostrar solo los minutos o las horas??? pues bueno si es asi lo puedes hacer asi:


Option Explicit

Private Sub Form_Load()
Text1.Text = Hour(Time)
Text2.Text = Minute(Time)
End Sub

pedraosone

#4
muchas gracias amigos,  voy a probarlo  y os dire como me ha ido, chefito gracias a ti tambien amigo ya estab modificando la segunda respuesta cuando vi tu post :laugh:


Chefito

#5
Mmmmm, el no quiere mostrarla. El quiere cambiar individualmente la hora o los minutos del reloj del sistema. Voy a utilizar como base el codigo de nuestro compañero C@ss¡@n¡:
Option Explicit

Private Sub Cambiar_Time(cadena As String)
On Error GoTo nError
    Time = Format(cadena, "hh:mm:ss AmPm")
    Exit Sub
nError:
  MsgBox "La hora introducida no es valida!!", vbCritical, "Error al actualizar la hora"
  Err = 0
End Sub

Private Sub cambiar_hora(cadena As String)
On Error GoTo nError
    Time = timeserial(cadena,minute(time),second(time))
    Exit Sub
nError:
  MsgBox "La hora introducida no es valida!!", vbCritical, "Error al actualizar la hora"
  Err = 0
End Sub

Private Sub cambiar_minutos(cadena As String)
On Error GoTo nError
    Time = timeserial(hour(time),cadena,second(time))
    Exit Sub
nError:
  MsgBox "Los minutos introducidos no son validos!!", vbCritical, "Error al actualizar la hora"
  Err = 0
End Sub


Private Sub CmdCambiarTime_Click()
    Cambiar_Time (Text1.Text)
End Sub

Private Sub CmdCambiarHora_Click()
    cambiar_hora(text2.text)
End Sub

Private Sub CmdCambiarMinutos_Click()
    cambiar_minutos(text3.text)
End Sub

Private Sub Form_Load()
    Text1.Text = "11:06:00"   'cambia la hora entera del sistema
    text2.text="12"   'cambia la hora
    text3.text="34"   'cambia los minutos
End Sub

Recuerda que los rangos de las horas van de 0 a 23 y de los minutos de 0 a 59. Si te sales salta el error.
Gracias a C@ss¡@n¡ por el código, y espero que no te hayas molestado que lo reutilizase y completase (ya que su respuesta está muy bien).
Saludos.
Moderador del foro oficial de AutoIt en español: www.AutoIt.es.

Todos tenemos inteligencia, lo malo es que algunos no nos acordamos donde la dejamos guardada ;)

pedraosone

amigos muchas gracias ya lo he solucionado aunque me da un pequeño fallo pues si en el text1 le pongo la hora y pulso, el me pone los minutos del text2 como la hora y los segundos del text3 como minutos pero eso puedo solucionarlo yo asi que doy el post or cerrado y muchas gracias nuevamente a todos  ;D

Chefito

#7
Jejejejeje, me equivoqué y metí todas las funciones en un mismo command (no lo probé, lo hice sobre la marcha  :rolleyes:). Ya está corregido.
Pues eso: TEMA CERRADO.
Moderador del foro oficial de AutoIt en español: www.AutoIt.es.

Todos tenemos inteligencia, lo malo es que algunos no nos acordamos donde la dejamos guardada ;)

cassiani

Cita de: Chefito en  1 Marzo 2008, 03:25 AM
Gracias a C@ss¡@n¡ por el código, y espero que no te hayas molestado que lo reutilizase y completase (ya que su respuesta está muy bien).
Saludos.

No es nada, ¿molestarme? ¿porque? "el conocimiento es libre" asi debe ser y asi será siempre, al contrario, me da gusto que un código mio sirva como base para la elaboración de uno un poco mas complejo, es mas, "en la unión esta la fuerza" ¿no es que dicen?

No segui repondiendo porque estaba en clase, pero no hace falta ya hicieron el trabajo.

¡S4lu2!