Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Barra De Progreso Al Copiar Un Archivo
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Barra De Progreso Al Copiar Un Archivo 
 
Buenas gente como va? hace poco arranque con gambas, y estoy tratando de armar un programa simple que copie archivos desde una carpeta a otra.

El problema me surgio cuando quise agregarle una barra de progreso, no se como vincularla al archivo, como hacer que cuando pulso el boton Copiar me muestre el archivo y el progreso de la barra hasta que se termina de copiar.

no termino de comprender como vincular los procesos.

Desde ya muchas gracias

Saludos

Andrés

Adjunto el codigo


Public Sub Chequeado_Click()

Dim source, dest As String
Dim validador_Chequeado As Integer

validador_Chequeado = 1


source = "/home/supervisor/Documentos/source/prueba.txt"
dest = "/home/supervisor/Documentos/Chequeado/prueba.2txt"

If Not Exist(dest) And validador_Chequeado = 1 Then

  Copy source To dest
  
  Else
  
  Message.Info(("YA EXISTE EL ARCHIVO o  FUE RECHAZADO"))
  
Endif




End

Public Sub ProgressBar1_MouseDown()

  

End

 



 
Andres13 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
El comando copy no genera ninguna salida, por lo que no puedes controlar la cantidad de bytes copiados y pasárselos a la barra de progreso. Para eso tienes que usar un bucle donde abras el archivo de destino for write y vayas controlando la cantidad grabada, etc. No es dificil y creo que en el libro de gambas había un ejemplo parecido (aunque muy obsoleto tiene cosas que no han cambiado y funcionan).

No tengo hecho ningún ejemplo probado que te pueda servir, pero seguro que alguien por aquí sí te puede orientar.

Bienvenido, por cierto      

Un saludo.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
Bienvenido al foro.
Mira, hice este ejemplo porque me pareció interesante como ejercicio porque no había usado nunca la barra de progreso con archivos y progresos de shell.
Espero que te sirva para lo que queres hacer.
pd: Tenes que tener creadas las carpetas /tmp/tmp1 y /tmp/tmp2 y alguna de ellas con un archivo dentro, funciona en ambos sentidos.

Saludos.

copyleft.tar.gz
Descripción: Ejemplo de barra de progreso con copia de archivos por comando cp shell. 
Descargar
Nombre del archivo: copyleft.tar.gz
Tamaño: 12.73 KB
Descargado: 34 veces
copyleft.tar.gz
Descripción: Ejemplo de barra de progreso con copia de archivos por comando cp shell. 
Descargar
Nombre del archivo: copyleft.tar.gz
Tamaño: 12.73 KB
Descargado: 34 veces
copyleft.tar.gz
Descripción: Ejemplo de barra de progreso con copia de archivos por comando cp shell. 
Descargar
Nombre del archivo: copyleft.tar.gz
Tamaño: 12.73 KB
Descargado: 34 veces

 



 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
tincho escribió: [Ver mensaje]
Bienvenido al foro.
Mira, hice este ejemplo porque me pareció interesante como ejercicio porque no había usado nunca la barra de progreso con archivos y progresos de shell.
Espero que te sirva para lo que queres hacer.
pd: Tenes que tener creadas las carpetas /tmp/tmp1 y /tmp/tmp2 y alguna de ellas con un archivo dentro, funciona en ambos sentidos.

Saludos.



Muchas gracias!!!!!!

te hago una consulta cuando lo corro me tira este error

Gtk-CRITICAL **: IA__gtk_widget_style_get: assertion `GTK_IS_WIDGET (widget)' failed

puede que no haya instalado alguna libreria o algo asi?

Gracias otra vez!

Andrés
 



 
Andres13 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
Una posibilidad, pero (como ha dicho shordi) no usando la función Copy, podría ser esta:
Public Sub Button1_Click()

  Dim flOr, flCp As File
  Dim origo, copia As String
  Dim bb As Byte[]
  Dim quantum, lo As Integer
  Dim l As Long
  
   origo = "/ruta/del/archivo/origen"
   copia = "/ruta/del/archivo/copia"
  
   flOr = Open origo For Read
  
   flCp = Open copia For Create
  
   lo = Lof(flOr)
  
   quantum = lo \ 100
  
   bb = New Byte[quantum + (lo Mod 100)]
  
   While Not Eof(flOr)
     If lo - Seek(flOr) < quantum Then quantum = lo - Seek(flOr)
     bb.Read(flOr, 0, quantum)
     bb.Write(flCp, 0, quantum)
     l += quantum
     ProgressBar1.Value = ((l * 100) \ lo) / 100
     Wait 0.001
   Wend
  
   flCp.Close
   flOr.Close

End

 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
Citar:

Gtk-CRITICAL **: IA__gtk_widget_style_get: assertion `GTK_IS_WIDGET (widget)' failed

No has hecho nada malo, esos warnings los lanza la librería gráfica GTK, que no se lleva demasiado bien con gambas.
No has dicho qué distro de Linux utilizas, pero si te pasas a un tema de escritorio de QT no tendrás más avisos de esos.

Saludos.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
shordi escribió: [Ver mensaje]
No has hecho nada malo, esos warnings los lanza la librería gráfica GTK, que no se lleva demasiado bien con gambas.No has dicho qué distro de Linux utilizas, pero si te pasas a un tema de escritorio de QT no tendrás más avisos de esos.


Si es verdad que gambas va mejor con qt que con gtk, pero mira yo uso debian testing con escritorio MATE (que es gtk2 mas compatibilidad con gtk3) y no tira ese error. La verdad que luego de probar muuuuuchas distros recomiendo debian testing con MATE. y los controles que uso en los programas que hago con gambas son los qt. y todo funciona de maravilla.
screenshot_copyleft
Saludos.
 



 
última edición por tincho el Jueves, 21 Abril 2016, 09:17; editado 1 vez 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
[off-topic] (como dice el Boss)

tincho escribió: [Ver mensaje]
La verdad que luego de probar muuuuuchas distros recomiendo debian testing con MATE. y los controles que uso en los programas que hago con gambas son los qt. y todo funciona de maravilla...


No he probado debian. Mejor dicho lo probé hace muchos años y, como se dice en mi pueblo, "era un porculo" la instalación. Supongo que ahora a mejorado. El caso es que yo necesito una distribución que se instale en un periquete y sin complicación ninguna (para que puedan instalarla los usuarios en caso de urgencia) y en eso LinuxMint + Cinnamon me encanta. A la hora del diseño sí ves los warnings -que cambiando el tema de escritorio desaparecen- pero en tiempo de ejecución funciona de maravilla.

Supongo que es cuestión de gustos...

Saludos
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
shordi escribió: [Ver mensaje]

...No he probado debian. Mejor dicho lo probé hace muchos años y, como se dice en mi pueblo, "era un porculo" la instalación. Supongo que ahora a mejorado. El caso es que yo necesito una distribución que se instale en un periquete y sin complicación ninguna (para que puedan instalarla los usuarios en caso de urgencia) y en eso LinuxMint + Cinnamon me encanta.

... de cuantos años hablamos?   porque en la actualidad debian se instala muy facilmente.
No hay que usar ppa  para tener un gambas actual (esto es desde hace muy poco la verdad) es muy estable y rápida y a nivel recursos esta, eso si igual que mint 17.3 (ambas con MATE no se con cinamon).
Merece la pena intentar usarla y darle una oportunidad. Es la distribucion de linux (y otros kernels) mas estable robusta fiable etc. etc. que existe. y sin animo de ofender a ningun slakware o similares que son estables también pero no hay tanta información en la red, y para debian hay muchísima.

Citar:

A la hora del diseño sí ves los warnings -que cambiando el tema de escritorio desaparecen- pero en tiempo de ejecución funciona de maravilla.

En debian no se ven nunca los warnings esos, porque el sistema esta mas integrado y estable. en mint parece que no.
Ademas debian esta en la estación espacial internacional por su fiabilidad.
Yo coincido plenamente con vos en que a los usuarios que usan la pc como usan un horno microondas Linux mint va de perlas, o Ubuntu y derivados.
Pero los que les meten mano a los sistemas o incluso manejan servidores debian es, legen......
.
.
.
.
.
.
daria!!!.

Saludos.
 



 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Barra De Progreso Al Copiar Un Archivo 
 
Citar:
... de cuantos años hablamos?

No recuerdo exactamente... 2006 o 2007.

Mi problema es que no es una máquina: son unas 60 y repartidas en seis ciudades... todas ya con Linuxmint y sus usuarios acostumbrados. El cambio costaría, costaría...

No obstante me has picado la curiosidad respecto a la instalación. Aún así... testing y robustez no son incompatibles?

Saludos
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Esquinas De La Barra De Progreso guadafan General 18 Domingo, 09 Diciembre 2012, 12:54 Ver último mensaje
Shell
No hay nuevos mensajes Ejemplo De Barra De Progreso Con Timer Shell Aplicaciones/Fragmentos de Código 15 Viernes, 22 Marzo 2013, 10:09 Ver último mensaje
Shell
No hay nuevos mensajes Problema Para Mostrar La Barra De Progreso. Shell General 5 Miercoles, 16 Marzo 2016, 00:33 Ver último mensaje
Shell
No hay nuevos mensajes Modos De La Barra De Progreso. Shell Controles/Librerías/Componentes 4 Jueves, 12 May 2016, 19:32 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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



  

 

cron