Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Añadir Un Contador De Tiempo A Un Spinner
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Añadir Un Contador De Tiempo A Un Spinner 
 
Como sabemos, algunos widgets de gambas, a su vez se componen de uno o más widgets; y por eso son "Children" del widget principal.
A través de la propiedad ".Children" del widget principal es posible añadir algunos recursos utiles a este widget.

Por ejemplo el Spinner se constituye incluso de un "Drawingarea", del cual podemos utilizar los recursos previstos de esa Clase.
Este simpatico ejemplo añade al Spinner común de gambas, un contador de tiempo:
Private da As DrawingArea
Private tp As Date


Public Sub Form_Open()

  Dim obs As Observer

  With Spinner1
    .W = 120
    .H = 120
  End With
  With da = Spinner1.Children[0]
    .Background = Color.Lighter(Color.Yellow)
    .W = Spinner1.W
    .H = Spinner1.H
  End With
' Asigna a el objeto, apuntado por la variable "da", a un grupo de eventos:
  obs = New Observer(da) As "Dr"
  
  tp = Now
  Spinner1.Start()

End


Public Sub Dr_Draw()
  
  With Paint
    .Begin(da)
    .Brush = .Color(Color.Red)
    .Font.Size = 6
    .DrawText(CStr(Date(0, 0, 0, 0, 0, 0, DateDiff(tp, Now, gb.Millisecond))), 0, 0, da.W, da.H, Align.Center)
    .End
  End With
  
End

 



 
última edición por vuott el Miercoles, 18 Septiembre 2019, 10:34; editado 2 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
Me he mareado mirándolo...
     

Ahora añade la posibilidad de una cantidad máxima de tiempo y una propiedad "Invert" para hacer cuenta atrás o adelante
y dale forma de control.
Quedaría chulo
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
shordi escribió:  
Ahora añade la posibilidad de una cantidad máxima de tiempo y una propiedad "Invert" para hacer cuenta atrás o adelante

Pero cuando llega a su maximum, qué deberia suceder ?
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
vuott escribió:  
shordi escribió:  
Ahora añade la posibilidad de una cantidad máxima de tiempo y una propiedad "Invert" para hacer cuenta atrás o adelante

Pero cuando llega a su maximum, qué deberia suceder ?


Una buena foto de esa niña que gano Miss Italia.        
 



 
gambafeliz - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
gambafeliz escribió:  
Una buena foto de esa niña que gano Miss Italia.        

Uhmmm... no es mala idea...
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
vuott escribió:  
shordi escribió:  
Ahora añade la posibilidad de una cantidad máxima de tiempo y una propiedad "Invert" para hacer cuenta atrás o adelante

Pero cuando llega a su maximum, qué deberia suceder ?


Parar y levantar el evento TopReached(), naturalmente.
   
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
shordi escribió:  
Parar y levantar el evento TopReached(), naturalmente.


...más simplemente, cuando llega a su maximum, el programa mostrará una foto de Missssss Italia 2019.   ¡Vamos a llegar a la sustancia!
Se necesita poner sobre el Formulario un PictureBox y activar los Componentes gb.net y gb.net.curl .

Private da As DrawingArea
Private tm As Date


Public Sub Form_Open()

  Dim obs As Observer

  With Spinner1
    .W = 120
    .H = 120
  End With
  With da = Spinner1.Children[0]
    .Background = Color.Lighter(Color.Yellow)
    .W = Spinner1.W
    .H = Spinner1.H
  End With

  obs = New Observer(da) As "Dr"
  
  tm = DateAdd(Now, gb.Second, 5)   ' ...esperando la señorita por 5 segundos
  Spinner1.Start()

End


Public Sub Dr_Draw()
  
  Dim i As Integer
  Dim tp As New HttpClient
  Dim s As String
  Dim im As New Image
 
  With Paint
    .Begin(da)
    .Brush = .Color(Color.Red)
    .Font.Size = 6
    i = DateDiff(Now, tm, gb.Millisecond)
    .DrawText(CStr(Date(0, 0, 0, 0, 0, 0, i)), 0, 0, da.W, da.H, Align.Center)
    .End
  End With
  If i <= 0 Then
    Spinner1.Stop
    Spinner1.Delete
    s = tp.Download("https://www.ilmessaggero.it/uploads/ckfile/201909/carolina%20stramare%20chi%20e%20miss%20italia%20oggi%20ultime%20notizie_07021241.jpg")
    tp.Close
    im = im.FromString(s)
    With Me
      .W = im.W
      .H = im.H
    End With
    With PictureBox1
      .X = 0
      .Y = 0
      .W = im.W
      .H = im.H
      .Image = im
      End With
  Endif
  
End

 



 
última edición por vuott el Miercoles, 18 Septiembre 2019, 20:51; editado 4 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
vuott escribió:  
gambafeliz escribió:  
Una buena foto de esa niña que gano Miss Italia.        

Uhmmm... no es mala idea...


         
 



 
gambafeliz - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
shordi escribió:  
vuott escribió:  
shordi escribió:  
Ahora añade la posibilidad de una cantidad máxima de tiempo y una propiedad "Invert" para hacer cuenta atrás o adelante

Pero cuando llega a su maximum, qué deberia suceder ?


Parar y levantar el evento TopReached(), naturalmente.
   


Sois los mejores        
 



 
gambafeliz - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Añadir Un Contador De Tiempo A Un Spinner 
 
vuott escribió:  
shordi escribió:  
Parar y levantar el evento TopReached(), naturalmente.


...más simplemente, cuando llega a su maximum, el programa mostrará una foto de Missssss Italia 2019.   ¡Vamos a llegar a la sustancia!


Esta visto que yo cuando sea grande quiero ser como vosotros      
 



 
gambafeliz - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
0.00 0 0 0
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes ¿formularios En Tiempo De Ejecución O En... jsoto61 General 1 Jueves, 10 Diciembre 2009, 00:54 Ver último mensaje
fabianfv
No hay nuevos mensajes Añadir En Tiempo De Ejecucion Al Estilo D... destroyer General 5 Lunes, 01 Noviembre 2010, 19:12 Ver último mensaje
Invitado
No hay nuevos mensajes Contador En Timer Vigilar Y Contar Cambi... codificador General 5 Jueves, 28 Marzo 2013, 23:57 Ver último mensaje
codificador
No hay nuevos mensajes Uso Del Control Spinner viejito Controles/Librerías/Componentes 1 Lunes, 07 Diciembre 2015, 00:19 Ver último mensaje
vuott
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
No puede descargar archivos
No puede publicar eventos en el calendario