Mensajes: 434 Ubicación: Tachira
Domingo, 28 Agosto 2016, 07:00
Bien despues de analizar como trabajaba la Gridview pude darme cuenta de que era lo que sucedia la idea del for variable to es para recorrer de una ves toda la Gridview por lo cual siempre se me posicionadaba en la ultima fila! y la de MoveTo(0,0) para irme moviendo de la fila donde estaba a la siguiente, pero el planteamiento no es tan facil si analizas bien la logica, porque no captaba en donde estaba ubicado primero, asi que fui poniendo un numero diferente en moveto(0,0) sabiendo que estas en la posicion 1 de la GridView por consiguiente si colocas moveto(2,0) o 3 o 4 te iras moviendo a esas filas!.
Bien dije pero si deseo avanzar de la 4 a la 5? alli es donde me trababa dije pues vamos a sumarle 1 y asi va avanzando las filas, aja y como hacerle saber a la maquina que estas en la posicion X y debes sumarle 1?:
Bueno pense en captar las filas! y si capto la fila donde estoy posicionado pues le sumo 1 y listo!, vi por ahi un hilo de los compañeros programadores y me dio una idea con este codigo:
f = GridView_lista_multimedia.RowAt(Mouse.y)
c = GridView_lista_multimedia.ColumnAt(Mouse.x)
Print f;; c
Con esto detecto la posicion actual donde estoy y luego le sumo 1 para pasar la siguiente fila y si le resto pues regreso
Por lo cual se me ocurrio en el evento click de la GridView()
Hacer esto para ir detectando donde estoy parado m capta a f que tiene la fila donde estoy ubiicado.
Timer3.Stop
f = GridView_lista_multimedia.RowAt(Mouse.y)
c = GridView_lista_multimedia.ColumnAt(Mouse.x)
Print f;; c
m = f
mover(GridView_lista_multimedia[GridView_lista_multimedia.row, 1].text)
End
Para luego con algunas variable globales traerlas al boton de siguiente fila con "m = m + 1" y luego hacer:
GridView_lista_multimedia.MoveTo(m, n)
GridView_lista_multimedia.Select(m, n)
para ir avanzando a la siguiente cancion hago esto!
Y para reproducir los archivos multimedia desde la Griview con doble clik hice lo siguiente:
Public Sub GridView_lista_multimedia_DblClick()
If GridView_lista_multimedia.row = -1 Then
Message.Error("NO HAY LISTA QUE SELECCIONAR!, AÑADE UN ARCHIVO A LA LISTA EN EL BOTON (+) O REPRODUZCA UN ARCHIVO MULTIMEDIA EN EL MENU ARCHIVO!")
Else
MediaView1.Stop
Dialog.path = File.Name(movimientotexto)
seleccionar_lista = (movimientotexto)
'Timer3.Start
Timer3.Stop
MediaView1.ShowControl = -1
sVideoToRun = (movimientotexto)
bRunVideo = True
If bRunVideo Then
MediaView1.URL = Media.URL(sVideoToRun)
Try MediaView1.Play
lblTitle.Text = File.Name(sVideoToRun)
If Error Then Message.Error("NO SE ENCUENTRA LA RUTA DEL ARCHIVO", "OK") 'If it wont play!
bRunVideo = False
Endif
Endif
End
Con este ejemplo estoy desarrollando un reproductor multimedia con todos los elementos necesarios y que funcionen hasta donde se pueda ya reproduce con siguiente, atras, amplia la pantalla, a valor normal oculta la lista, la muestra, reproduce con el teclado pausa y detiene, abre archivos individuales, con carpeta completa, agrega canciones a la lista, los quita, guarda y carga listas de reproduccion.
Lo que me detiene hasta ahora es que este elemento llamado MediaView que reproduce videos y musica en gambas que posee una propiedad llamada Showcontrol que son unos controles completos de reproducir, pausa, detener, tiempo y volume por lo cual no consigo por ningun lado al tiempo de la reproduccion ni al volume y sin saber el tiempo en que termina una reproduccion no podre cambiar de cancion automaticamente.