Visual Basic - Ejecutar una orden despues de 15 segundos

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 3
Ha aumentado su posición en 30 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecutar una orden despues de 15 segundos

Publicado por Agusb (2 intervenciones) el 05/08/2019 18:19:30
Buenas trades amigos, les comento estoy creando un programita que por medio de un boton va grabando un video que guarda en mi disco duro, quiero que esta grabación se detenga al pasar 15 segundos, he intentado con ciclo pero no me funciona, aun no manejo muy bien el timer y he hecho varios intentos pero no he podido hacerlo (pude hacer como una especie de cronometro para que el usuario lo vea), copio y pego el codigo que tengo hecho:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim iresult As Integer
        Dim Opc As Integer
        Opc = Int(Rnd() * 1000
 
        AxVideoCap1.WMVProfile = 0
        AxVideoCap1.OutputWMV = True
        AxVideoCap1.CaptureFileName = "C:\\test\\" & Opc & ".wmv"
        AxVideoCap1.CaptureMode = True
        AxVideoCap1.CaptureAudio = True
        AxVideoCap1.CaptureVideo = True
        AxVideoCap1.Device = 0
        AxVideoCap1.VideoFormat = 0
        AxVideoCap1.SyncMode = 1
        AxVideoCap1.VideoStandard = 0
        AxVideoCap1.AudioInputPin = 0
        iresult = AxVideoCap1.Start()
        Timer1.Enabled = True  ---- > este timer es para el cronometro que ve el usuario
 
        If iresult = -1 Then
            MessageBox.Show("Grabacion Fallida")
        End If


Aca busco poner el codigo que al pasar 15 segundos la grabacion se detenga (y asi no usar el boton de abajo)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
End Sub
 
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        AxVideoCap1.CaptureMode = False  ------> este es un boton para detener la grabacion
        AxVideoCap1.Stop()
    End Sub
 
    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
 
        Label2.Text = Val(Label2.Text) - 1     ---------> este es el label que muestra al usuario el tiempo
        If Label2.Text = 0 Then Timer1.Enabled = False
 
    End Sub
End Class
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Cris
Val: 405
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecutar una orden despues de 15 segundos

Publicado por Cris (27 intervenciones) el 06/08/2019 21:47:12
No sé si esto te ayudará.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option Explicit
'1 de 3 Timer intN
Dim intN As Integer
 
Public Sub Wait(seconds As Integer)
'2 de 3 Timer intN
Dim dTimer As Double
dTimer = Timer
Do While Timer < dTimer + seconds
DoEvents
Loop
 
'3 de 3 Función intN
'Wait es la llamada al timer y se añade el tiempo que ha de esperar
'para ejecutar una orden
Wait 15  '15 seconds
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 3
Ha aumentado su posición en 30 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Ejecutar una orden despues de 15 segundos

Publicado por Agusb (2 intervenciones) el 08/08/2019 00:24:24
Amigos muchas gracias ya lo resolvi asi:

1
2
3
4
5
6
7
8
Label2.Text += 1
If Label2.Text = 10 Then
    Timer1.Enabled = False
    AxVideoCap1.CaptureMode = False
    AxVideoCap1.Stop()
    Form2.Show()
    Me.Close()
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar