|
Página 1 de 2
|
Añadir Un Contador De Tiempo A Un Spinner
Autor |
Mensaje |
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
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, 09:34; editado 2 veces
|
#1 Miercoles, 18 Septiembre 2019, 09:32 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
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
|
#2 Miercoles, 18 Septiembre 2019, 11:57 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Añadir Un Contador De Tiempo A Un Spinner
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 ?
|
#3 Miercoles, 18 Septiembre 2019, 16:47 |
|
|
gambafeliz
Analista Programador
Registrado: Julio 2019
Mensajes: 830
Edad: 54
|
Re: Añadir Un Contador De Tiempo A Un Spinner
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.
|
#4 Miercoles, 18 Septiembre 2019, 17:34 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Añadir Un Contador De Tiempo A Un Spinner
Uhmmm... no es mala idea...
|
#5 Miercoles, 18 Septiembre 2019, 17:43 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Añadir Un Contador De Tiempo A Un Spinner
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
|
#6 Miercoles, 18 Septiembre 2019, 18:00 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
Re: Añadir Un Contador De Tiempo A Un Spinner
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, 19:51; editado 4 veces
|
#7 Miercoles, 18 Septiembre 2019, 18:14 |
|
|
gambafeliz
Analista Programador
Registrado: Julio 2019
Mensajes: 830
Edad: 54
|
Re: Añadir Un Contador De Tiempo A Un Spinner
|
#8 Miercoles, 18 Septiembre 2019, 19:22 |
|
|
gambafeliz
Analista Programador
Registrado: Julio 2019
Mensajes: 830
Edad: 54
|
Re: Añadir Un Contador De Tiempo A Un Spinner
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
|
#9 Miercoles, 18 Septiembre 2019, 19:22 |
|
|
gambafeliz
Analista Programador
Registrado: Julio 2019
Mensajes: 830
Edad: 54
|
Re: Añadir Un Contador De Tiempo A Un Spinner
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
|
#10 Miercoles, 18 Septiembre 2019, 19:24 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 1 de 2
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado Usuarios registrados conectados: Ninguno
|
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 Puede descargar archivos No puede publicar eventos en el calendario
|
|
|
|
|