Autor |
Mensaje |
Andres13
Usuario
Registrado: Abril 2016
Mensajes: 11
Edad: 39
|
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
|
#1 Miercoles, 20 Abril 2016, 20:52 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
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
|
#2 Miercoles, 20 Abril 2016, 20:59 |
|
|
tincho
Analista Programador
Registrado: Noviembre 2014
Mensajes: 2565
Edad: 48 Ubicación:
|
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.
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: |
36 veces |
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: |
36 veces |
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: |
36 veces |
|
#3 Miercoles, 20 Abril 2016, 22:57 |
|
|
Andres13
Usuario
Registrado: Abril 2016
Mensajes: 11
Edad: 39
|
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.
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
|
#4 Jueves, 21 Abril 2016, 00:44 |
|
|
vuott
Analista Programador
Registrado: Agosto 2013
Mensajes: 2086
Edad: 60 Ubicación:
|
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:
|
#5 Jueves, 21 Abril 2016, 00:58 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
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
|
#6 Jueves, 21 Abril 2016, 08:37 |
|
|
tincho
Analista Programador
Registrado: Noviembre 2014
Mensajes: 2565
Edad: 48 Ubicación:
|
Re: Barra De Progreso Al Copiar Un Archivo
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.
Saludos.
última edición por tincho el Jueves, 21 Abril 2016, 09:17; editado 1 vez
|
#7 Jueves, 21 Abril 2016, 09:16 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Barra De Progreso Al Copiar Un Archivo
[off-topic] (como dice el Boss)
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
|
#8 Jueves, 21 Abril 2016, 09:22 |
|
|
tincho
Analista Programador
Registrado: Noviembre 2014
Mensajes: 2565
Edad: 48 Ubicación:
|
Re: Barra De Progreso Al Copiar Un Archivo
...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.
|
#9 Jueves, 21 Abril 2016, 10:15 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
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
|
#10 Jueves, 21 Abril 2016, 10:29 |
|
|
|