Visor de imagenes
Enviado por serlec el dÃa 14 de julio de 2005
Gracias por adeantado, estoy intentando implementar un sencillo visor de imagenes, lo que ocurre es que no se como hacer que me refresque la pantalla dentro del bucle que avanza cada 5 segundos, os cuelgo el codigo del evento click del boton visor y me comentais algo:
Private Sub diapositivas_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles diapositivas.Click
Dim ruta As String
Dim segundos As Integer
Dim segundos2 As Integer
cadena_connexio = "provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:InetpubwwwrootWebApplication1video_c9.mdb"
cn.ConnectionString = cadena_connexio
txt_codi.ReadOnly = True
Try 'Inici de l'estructura de control d'errors en les operacions amb
' la base de dades.
cn.Open()
With cmmd_credit
.Connection = cn
.CommandType = CommandType.Text
.CommandText = "SELECT * FROM pelis "
End With
dr_credits = cmmd_credit.ExecuteReader
dr_credits.Read()
ruta = (dr_credits.Item("carà tula"))
While (ruta <> "")
segundos = Now.Second
segundos2 = segundos + 5
If segundos2 > 60 Then
segundos2 = segundos2 - 60
Else
segundos2 = segundos + 5
End If
While Now.Second <> segundos2
txt_error.Text = "esto es un bucle"
End While
txt_error.Text = "esto es otro bucle"
ruta = (dr_credits.Item("carà tula"))
Image1.ResolveUrl("file:///" & ruta & "")
dr_credits.Read()
End While
Catch exc As Exception 'Controlem l'excepció i mostrem el missatge.
txt_error.Text = exc.Message
Finally
'Controlem que la connexió es tanqui al sortir.
If cn.State = ConnectionState.Open Then
cn.Close()
End If
End Try
' Fi del bloc de control d'errors.
End Sub
El problema radica en que me carge la imagen cada vez que cambia el acceso a la base de datos es decir que me ejecute el evento repetidas veces
Gracias por adeantado, estoy intentando implementar un sencillo visor de imagenes, lo que ocurre es que no se como hacer que me refresque la pantalla dentro del bucle que avanza cada 5 segundos, os cuelgo el codigo del evento click del boton visor y me comentais algo:
Private Sub diapositivas_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles diapositivas.Click
Dim ruta As String
Dim segundos As Integer
Dim segundos2 As Integer
cadena_connexio = "provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:InetpubwwwrootWebApplication1video_c9.mdb"
cn.ConnectionString = cadena_connexio
txt_codi.ReadOnly = True
Try 'Inici de l'estructura de control d'errors en les operacions amb
' la base de dades.
cn.Open()
With cmmd_credit
.Connection = cn
.CommandType = CommandType.Text
.CommandText = "SELECT * FROM pelis "
End With
dr_credits = cmmd_credit.ExecuteReader
dr_credits.Read()
ruta = (dr_credits.Item("carà tula"))
While (ruta <> "")
segundos = Now.Second
segundos2 = segundos + 5
If segundos2 > 60 Then
segundos2 = segundos2 - 60
Else
segundos2 = segundos + 5
End If
While Now.Second <> segundos2
txt_error.Text = "esto es un bucle"
End While
txt_error.Text = "esto es otro bucle"
ruta = (dr_credits.Item("carà tula"))
Image1.ResolveUrl("file:///" & ruta & "")
dr_credits.Read()
End While
Catch exc As Exception 'Controlem l'excepció i mostrem el missatge.
txt_error.Text = exc.Message
Finally
'Controlem que la connexió es tanqui al sortir.
If cn.State = ConnectionState.Open Then
cn.Close()
End If
End Try
' Fi del bloc de control d'errors.
End Sub
El problema radica en que me carge la imagen cada vez que cambia el acceso a la base de datos es decir que me ejecute el evento repetidas veces
Creo que con un
this.Invalidate() te basta. Eso obliga a repintar el formulario.
Por otro lado, tu codigo de repintar cada dos segundos me parece un poco manual. Pruba a usar un Timer, quedará más elegante y menos dificil de modificar
Salutacions!
this.Invalidate() te basta. Eso obliga a repintar el formulario.
Por otro lado, tu codigo de repintar cada dos segundos me parece un poco manual. Pruba a usar un Timer, quedará más elegante y menos dificil de modificar
Salutacions!
Pues el web form no tiene la propiedad invalidate, lo he probado con validate que si la tiene y no he sacado nada, alguna opcion mas??, he probado lo del tiemer pero solo me funciona durante el tiempo de carga de la pagina, una vez cargada la pagina estatica el timer se para a pesar de que lo pongo la propiedad autoreset en true como he leido en la ayuda de visual net, supongo que cometo algun error a la hora de declararlo aunque lo he hecho de forma manual arrastrandolo y luego manipulando las proiedades en el explorador, bueno sigo esprando vuestras propuestas, empiezo a pensar que no se puede hacer o esto se escapa a mis conociemientos.
