Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: Petro_Boca en 11 Septiembre 2010, 16:54 PM

Título: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 16:54 PM
Hola!

necesito ejecutar una funcion despues de los 5 segundos abierto el FORM.

osea, q se ejecuta una vez, no cada 5 segundos..

algun ejemplo :S?

Gracias :)
Título: Re: necesito ejecutar una
Publicado por: Psyke1 en 11 Septiembre 2010, 16:57 PM
Código (vb) [Seleccionar]
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Código (vb) [Seleccionar]

Private Sub Form_Load ()
   Me.Show
   Call Sleep (5000)
   'Call Function
End Sub


DoEvents¡! :P
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 16:59 PM
Timer cada 5 segundos, una vez que se ejecute lo deshabiltas :)

NOTA: Odio el sleep, porque hace parecer que la aplicacion "se tildo"
Título: Re: necesito ejecutar una
Publicado por: Psyke1 en 11 Septiembre 2010, 17:01 PM
O asi:

http://foro.elhacker.net/programacion_visual_basic/solucionado_timer_o_alternativa-t304050.0.html;msg1508955#msg1508955

DoEvents¡! :P
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:03 PM
Cita de: *PsYkE1* en 11 Septiembre 2010, 16:57 PM
Código (vb) [Seleccionar]
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Código (vb) [Seleccionar]

Private Functin Form_Load ()
    Me.Show
    Call Sleep (5000)
    'Call Function
End Sub


DoEvents¡! :P

jaaj pero lo q yo quiero es abrir el from y que despues de 5 segundos se ejecute la funcion.

no q el from se abra en 5 segundos ^^
Título: Re: necesito ejecutar una
Publicado por: Psyke1 en 11 Septiembre 2010, 17:05 PM
Quitas el Me.Show y listo...

DoEvents¡! :P
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:08 PM
Cita de: *PsYkE1* en 11 Septiembre 2010, 17:05 PM
Quitas el Me.Show y listo...

DoEvents¡! :P

lo unico q hice fue poner en "general" esto:

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

y en from_load (antes de la funcioon)

Call Sleep(10000)
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 17:09 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:08 PM
Cita de: *PsYkE1* en 11 Septiembre 2010, 17:05 PM
Quitas el Me.Show y listo...

DoEvents¡! :P

lo unico q hice fue poner en "general" esto:

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

y en from_load (antes de la funcioon)

Call Sleep(10000)

Tienes que poner Me.Show antes del sleep ¬¬
Título: Re: necesito ejecutar una
Publicado por: Psyke1 en 11 Septiembre 2010, 17:10 PM
Cita de: raul338 en 11 Septiembre 2010, 17:09 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:08 PM
Cita de: *PsYkE1* en 11 Septiembre 2010, 17:05 PM
Quitas el Me.Show y listo...

DoEvents¡! :P

lo unico q hice fue poner en "general" esto:

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

y en from_load (antes de la funcioon)

Call Sleep(10000)

Tienes que poner Me.Show antes del sleep ¬¬
Pero si el no quiere mostrarlo antes de los segundos...
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:11 PM
Cita de: raul338 en 11 Septiembre 2010, 16:59 PM
Timer cada 5 segundos, una vez que se ejecute lo deshabiltas :)

NOTA: Odio el sleep, porque hace parecer que la aplicacion "se tildo"

y eso como se hace :P
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 17:11 PM
Cita de: *PsYkE1* en 11 Septiembre 2010, 17:10 PM
Pero si el no quiere mostrarlo antes de los segundos...

Cita de: Petro_Boca en 11 Septiembre 2010, 17:03 PM
jaaj pero lo q yo quiero es abrir el from y que despues de 5 segundos se ejecute la funcion.
no q el from se abra en 5 segundos ^^

La idea no seria hacerlo en el Load, sino hacer un sub main luego de instanciar el formulario :)
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 17:14 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:11 PM
y eso como se hace :P

Código (vb) [Seleccionar]

Private Sub Timer1_Tick()
   '' CODIGO
   Timer1.Enabled = false
End sub


:¬¬ lee algun manual de algoritmos :)
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:15 PM
Cita de: raul338 en 11 Septiembre 2010, 17:14 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:11 PM
y eso como se hace :P

Código (vb) [Seleccionar]

Private Sub Timer1_Tick()
   '' CODIGO
   Timer1.Enabled = false
End sub


:¬¬ lee algun manual de algoritmos :)

ah sisi ya lo habia echo, solo me faltaba saber como desactivarlo xd
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:25 PM
Cita de: raul338 en 11 Septiembre 2010, 17:14 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:11 PM
y eso como se hace :P

Código (vb) [Seleccionar]

Private Sub Timer1_Tick()
  '' CODIGO
  Timer1.Enabled = false
End sub


:¬¬ lee algun manual de algoritmos :)

q caraaaajoooo pongo Timer1.Enabled = false, en el mismo codigo del timer(para q se desactive cuando ejecuta la funcion), pero sigue activo :/
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 17:29 PM
Código (vb) [Seleccionar]

Private Sub Timer1_Tick()
  '' CODIGO
  Timer1.Enabled = false
End sub


FAIL MIO XD... el codigo es

Código (vb) [Seleccionar]

Private Sub Timer1_Timer()
  '' CODIGO
  Timer1.Enabled = false
End sub


Estaba en .net antes :silbar:

Yo lo probe y funciona u.u poniendo el interval a 5000 :P Aunque por alguna razon ejecuta 2 veces ._. (FAIL... no habia borrado el Debug xDDD)
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:31 PM
Cita de: raul338 en 11 Septiembre 2010, 17:29 PM
Código (vb) [Seleccionar]

Private Sub Timer1_Tick()
  '' CODIGO
  Timer1.Enabled = false
End sub


FAIL MIO XD... el codigo es

Código (vb) [Seleccionar]

Private Sub Timer1_Timer()
   If Not Timer1.Enabled Then Exit Sub
  '' CODIGO
  Timer1.Enabled = false
End sub


Estaba en .net antes :silbar:

Yo lo probe y funciona u.u poniendo el interval a 5000 :P Aunque por alguna razon ejecuta 2 veces ._.

issi, yo lo tenia bien, pero no se desactiva -_-
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 17:35 PM
deja de citar todo el mensaje anterior!!
Cita de: Petro_Boca en 11 Septiembre 2010, 17:31 PM
issi, yo lo tenia bien, pero no se desactiva -_-

Que codigo tienes ?
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:38 PM
Cita de: raul338 en 11 Septiembre 2010, 17:35 PM
deja de citar todo el mensaje anterior!!
Cita de: Petro_Boca en 11 Septiembre 2010, 17:31 PM
issi, yo lo tenia bien, pero no se desactiva -_-

Que codigo tienes ?

FFFFFUUUUUUUUUUUUUUU :@

te lo regalo

http://www.sendspace.com/file/ygdzpd
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 17:50 PM
No tengo la menor idea que intentas hacer, pero a mi me funciona perfecto :P
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 17:56 PM
Cita de: raul338 en 11 Septiembre 2010, 17:50 PM
No tengo la menor idea que intentas hacer, pero a mi me funciona perfecto :P

con el goto erro, se cierra el form2 y se vuelve a abrir.

pero el timer hacia q se cierre y se abra todo el tiempo (porq daba error, n encontraba unas cosas.. osea el error es normal, pero NO TENDRIA PORQ SAR ERROR SI EL TIMER ESTUBIERA DESACTIVADO
Título: Re: necesito ejecutar una
Publicado por: [D4N93R] en 11 Septiembre 2010, 17:59 PM
Por qué no creas un tread, lo lanzas apenas se abre la aplicación y en ese tread haces el sleep?
Título: Re: necesito ejecutar una
Publicado por: raul338 en 11 Septiembre 2010, 18:01 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:56 PM
Cita de: raul338 en 11 Septiembre 2010, 17:50 PM
No tengo la menor idea que intentas hacer, pero a mi me funciona perfecto :P

con el goto erro, se cierra el form2 y se vuelve a abrir.

pero el timer hacia q se cierre y se abra todo el tiempo (porq daba error, n encontraba unas cosas.. osea el error es normal, pero NO TENDRIA PORQ SAR ERROR SI EL TIMER ESTUBIERA DESACTIVADO

Pero es normal cuando tienes errores de logica :P
Cuando se cierra y se habre el form... adiviina, el Timer vuelve a estar en True!!! :P
Título: Re: necesito ejecutar una
Publicado por: Petro_Boca en 11 Septiembre 2010, 18:02 PM
Cita de: raul338 en 11 Septiembre 2010, 18:01 PM
Cita de: Petro_Boca en 11 Septiembre 2010, 17:56 PM
Cita de: raul338 en 11 Septiembre 2010, 17:50 PM
No tengo la menor idea que intentas hacer, pero a mi me funciona perfecto :P

con el goto erro, se cierra el form2 y se vuelve a abrir.

pero el timer hacia q se cierre y se abra todo el tiempo (porq daba error, n encontraba unas cosas.. osea el error es normal, pero NO TENDRIA PORQ SAR ERROR SI EL TIMER ESTUBIERA DESACTIVADO

Pero es normal cuando tienes errores de logica :P
Cuando se cierra y se habre el form... adiviina, el Timer vuelve a estar en True!!! :P

:¬¬ :laugh: :laugh: ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-) :¬¬ :¬¬ :¬¬ :¬¬ :¬¬ :laugh: :laugh: :laugh: :laugh: :laugh: :laugh: ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-) ;-)

el programa hace esto:

se logea, y nada mas ;D , pero con el timer..

pones los datos, abre el from2, a los 5 segundos se logea, si hay error se reinicia el form2..

pero ami me hace esto:

pones los datos, abre el from2, a los 5 segundos se logea, se vuelve a logear (proboca error), y se reinicia la apli.-, y entra en unna "Bola" de reinicios   :¬¬
Título: Re: necesito ejecutar una
Publicado por: BlackZeroX en 11 Septiembre 2010, 22:21 PM
.
Sleep() no es faltible ya que lo que hace es Dormir X tiempo al hilo actual xS!¡.

aqui tienes una optativa!¡.

Código (Vb) [Seleccionar]


Option Explicit

Private Declare Function WaitMessage Lib "user32" () As Long

Enum eTime
   Horas = 3600
   Minutos = 60
   Segundos = 1
End Enum

Public Sub Wait(ByVal vToWait&, Optional ByVal ThisWait As eTime = Segundos, Optional ByVal UseAllProc As Boolean = False)
Dim vDateE      As Date
   vDateE = DateAdd("s", vToWait& * (ThisWait + 0), Time)
   Do While vDateE > Time
       Call WaitMessage
       If Not UseAllProc Then DoEvents
   Loop
End Sub



Uso:

Código (vb) [Seleccionar]


Option Explicit

Private Sub Form_Load()
   Call MsgBox("segundos")
   Call Wait(5, Segundos, False)
   Call MsgBox("minutos")
   Call Wait(1, Minutos, True)
   Call MsgBox("Fin")
End Sub



Dulces Lunas!¡.
Título: Re: necesito ejecutar una
Publicado por: BlackZeroX en 11 Septiembre 2010, 22:24 PM

Si quieren borren esto

Porque demonios Citas el mensaje anterior Petro_Boca... Se entiende claro a quien respondes!¡.

Dulces Lunas!¡.