emmmm... no te entendí mucho, pero entiendo que la idea de un progressbar es ir de acuerdo al proceso que se está ejecutando y mostrar su progreso...
El mar, 17-10-2006 a las 17:32 -0300, Mauricio Felipe escribió: > Alejandro, > > Lo mejor seria que te guiaras en el patron de diseño llamado > "observer" (o pocas veces tambien llamado Spider). Este explica la > logica de funcionamiento de un miron (jejeje), el cual te va > entregando los avances de una clases, la cual se muestra en una barra > de progreso (ya que basicamente hacer que se mueva una barra de > progreso no tiene logica alguna y es muy simple, pero el asunto es que > dicha barra, vaya acorde con los procesos que se van realizando en tus > clases). En google existen varias paginas donde explican el patron. > Cualquier duda, solo consulta > > > Pd.: Existen varias implementaciones para la orientacion a objeto, > para eso te recomiendo que te leas un libro de "patrones de diseño" > > Saludos > > Mauricio Felipe Pacheco D. > Ingeniero en Informática > FONDEF 1055 > Universidad de Chile > Fono: 9784476 > > -- > Message: 1 > Date: Tue, 17 Oct 2006 15:24:23 -0300 > From: Germán Poó Caamaño <[EMAIL PROTECTED]> > Subject: Re: progressbar > To: [EMAIL PROTECTED], "Advocacy, chit-chat and event planning > in > Chile" <[email protected]> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1 > > On Tue, 2006-10-17 at 12:36 -0300, Alejandro Valdes Jimenez wrote: > > Estimados... > > > > ¿cual será la manera de implementar un progressbar mientras se > ejecuta > > una tarea? > > > > pregunto esto ya que necesito que mientras ejecuto una acción, se > active > > la barra de progreso hasta que termine la acción, sin embargo, solo > he > > logrado que la barra se active una vez terminada la acción. > > > > Ya me han dicho que con threads se puede, sin embargo, no logro > entender > > bien como complementar ambas cosas. > > Tienes que definir períodos entre los cuales deseas actualizar la > barra de progreso. Por ejemplo, si tienes tareas que puedes enumerar > o contar, entonces cada vez que terminas una de dichas tareas, > actualizas la barra de progreso (gtk_progress_bar_set_fraction). > Típicamente dentro de una iteración, por cada iteración actualizas > los valores de la barra de progreso. > > La barra de progreso no se va a actualizar sola. A menos que sea > de tipo 'pulse', donde lo único que aparece es el 'progreso' > moviéndose de un lado hacia otro. Eso se emplea cuando no sabes > cuando terminará (no puedes determinar el 100%). > > Lo de usar hilos va por otro lado. Si la tarea es muy demandante > y no devuelve el control en un período prolongado de tiempo, entonces > da la sensación que la aplicación se ha congelado. Se nota si > minimizas > y luego restauras el tamaño de la ventana, ésta se verá completamente > gris, sin controles. > > Mientras no soluciones lo primero, no tiene sentido intentar resolver > lo segundo. > > -- > Germán Poó-Caamaño > http://www.ubiobio.cl/~gpoo/ > Concepción - Chile > > > > ------------------------------ > > Message: 2 > Date: Tue, 17 Oct 2006 15:39:15 -0300 > From: Alejandro Valdes Jimenez < [EMAIL PROTECTED]> > Subject: [Fwd: Re: progressbar] > To: [email protected] > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > > -- > Alejandro Valdés Jiménez. > Area Plataforma > DTI - Dirección de Tecnologías de Información > Universidad de Talca. > Talca - Chile. > Teléfono: (56) (71) 200408 > ------------ próxima parte ------------ > Se ha borrado un mensaje inmerso... > De : Alejandro Valdes Jimenez <[EMAIL PROTECTED]> > Asunto: Re: progressbar > Fecha : Tue, 17 Oct 2006 15:32:18 -0300 > Tamaño: 1881 > Url : /archives/gnome-cl-list/attachments/20061017/68af3038/attachment.eml > > ------------------------------ > > Message: 3 > Date: Tue, 17 Oct 2006 15:59:57 -0300 > From: Fernando San Martín Woerner < [EMAIL PROTECTED]> > Subject: Re: [Fwd: Re: progressbar] > To: [EMAIL PROTECTED], "Advocacy, chit-chat and event planning > in > Chile" <[email protected]> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > Alejandro Valdes Jimenez escribió: > ... > >> > > al parecer, threads es mi opción. > > Sin tener 0 idea de perl (/me is python), se que existe la posibilidad > de realizar actualizaciones en gtk.main () > > en python se hacer con while gtk.events_pending() ej: > > while gtk.events_pending(): > gtk.mainiteration(gtk.FALSE) > > > Buscando en google code search: > > lang:perl gtk events_pending > > sale un larga lista de ejemplos.... > > yo partiría por ahí, saludos > > > -- > Fernando San Martín Woerner > Jefe de Informática > Galilea S.A. http://www.galilea.cl/ > > -- > Este mensaje ha sido analizado por nuestros servidores > en busca de virus y otros contenidos peligrosos, > y se considera que está limpio. > > > ------------ próxima parte ------------ > Se ha borrado un mensaje que no está en formato texto plano... > Nombre : snmartin.vcf > Tipo : text/x-vcard > Tamaño : 239 bytes > Descripción: no disponible > Url : > /archives/gnome-cl-list/attachments/20061017/fce57fcc/attachment.vcf > > ------------------------------ > > Message: 4 > Date: Tue, 17 Oct 2006 16:16:13 -0300 > From: Alejandro Valdes Jimenez <[EMAIL PROTECTED]> > Subject: Re: progressbar > To: Claudio Saavedra <[EMAIL PROTECTED]> > Cc: "Advocacy, chit-chat and event planning in Chile" > <[email protected]> > Message-ID: <[EMAIL PROTECTED] > > Content-Type: text/plain; charset=ISO-8859-1 > > gracias a todos... > > while (Gtk2->events_pending) { > Gtk2->main_iteration; > } > > eso me ayudó. > > ahora hay que afinarlo. > > El mar, 17-10-2006 a las 13:45 -0300, Claudio Saavedra escribió: > > On Tue, 2006-10-17 at 12:36 -0300, Alejandro Valdes Jimenez wrote: > > > Estimados... > > > > > > ¿cual será la manera de implementar un progressbar mientras se > ejecuta > > > una tarea? > > > > > > pregunto esto ya que necesito que mientras ejecuto una acción, se > active > > > la barra de progreso hasta que termine la acción, sin embargo, > solo he > > > logrado que la barra se active una vez terminada la acción. > > > > > En el ciclo donde ejecutas tu tarea, usa gtk_events_pending (): > > > > /* computation going on */ > > ... > > while (gtk_events_pending ()) > > gtk_main_iteration (); > > ... > > /* computation continued */ > > > > > > Claudio > > > -- > Alejandro Valdés Jiménez. > Area Plataforma > DTI - Dirección de Tecnologías de Información > Universidad de Talca. > Talca - Chile. > Teléfono: (56) (71) 200408 > > > > ------------------------------ > > Message: 5 > Date: Tue, 17 Oct 2006 16:27:06 -0300 > From: Fernando San Martín Woerner <[EMAIL PROTECTED]> > Subject: Re: progressbar > To: [EMAIL PROTECTED], "Advocacy, chit-chat and event planning > in > Chile" <[email protected]> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > Alejandro Valdes Jimenez escribió: > > gracias a todos... > > > > while (Gtk2->events_pending) { > > Gtk2->main_iteration; > > } > > en general el truco sirve para actualizar la ui durante un ciclo, ojo > que tu aplicación queda más lenta dado que la ui se va repintando. > > saludos > > > -- > Fernando San Martín Woerner > Jefe de Informática > Galilea S.A. http://www.galilea.cl/ > > -- > Este mensaje ha sido analizado por nuestros servidores > en busca de virus y otros contenidos peligrosos, > y se considera que está limpio. > > > ------------ próxima parte ------------ > Se ha borrado un mensaje que no está en formato texto plano... > Nombre : snmartin.vcf > Tipo : text/x-vcard > Tamaño : 239 bytes > Descripción: no disponible > Url : > /archives/gnome-cl-list/attachments/20061017/e3b11b59/attachment.vcf > > ------------------------------ > > Message: 6 > Date: Tue, 17 Oct 2006 16:30:41 -0300 > From: Alejandro Valdes Jimenez <[EMAIL PROTECTED]> > Subject: Re: progressbar > To: Fernando San Martín Woerner < [EMAIL PROTECTED]> > Cc: "Advocacy, chit-chat and event planning in Chile" > <[email protected]> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=ISO-8859-1 > > El mar, 17-10-2006 a las 16:27 -0300, Fernando San Martín Woerner > escribió: > > Alejandro Valdes Jimenez escribió: > > > gracias a todos... > > > > > > while (Gtk2->events_pending) { > > > Gtk2->main_iteration; > > > } > > > > en general el truco sirve para actualizar la ui durante un ciclo, > ojo > > que tu aplicación queda más lenta dado que la ui se va repintando. > > asi se ve, sin embargo, ya no se pone gris la ventan hasta el termino > de > la tarea. claro que podría ser mas bonito. :D > > > > > saludos > > > > > > -- > > Fernando San Martín Woerner > > Jefe de Informática > > Galilea S.A. http://www.galilea.cl/ > > > -- > Alejandro Valdés Jiménez. > Area Plataforma > DTI - Dirección de Tecnologías de Información > Universidad de Talca. > Talca - Chile. > Teléfono: (56) (71) 200408 > > > > ------------------------------ > > Message: 7 > Date: Tue, 17 Oct 2006 13:45:15 -0300 > From: Claudio Saavedra <[EMAIL PROTECTED]> > Subject: Re: progressbar > To: [EMAIL PROTECTED], "Advocacy, chit-chat and event planning > in > Chile" <[email protected]> > Message-ID: <[EMAIL PROTECTED]> > Content-Type: text/plain; charset=utf-8 > > On Tue, 2006-10-17 at 12:36 -0300, Alejandro Valdes Jimenez wrote: > > Estimados... > > > > ¿cual será la manera de implementar un progressbar mientras se > ejecuta > > una tarea? > > > > pregunto esto ya que necesito que mientras ejecuto una acción, se > active > > la barra de progreso hasta que termine la acción, sin embargo, solo > he > > logrado que la barra se active una vez terminada la acción. > > > En el ciclo donde ejecutas tu tarea, usa gtk_events_pending (): > > /* computation going on */ > ... > while (gtk_events_pending ()) > gtk_main_iteration (); > ... > /* computation continued */ > > > Claudio > > -- > Claudio Saavedra <[EMAIL PROTECTED]> > > > > ------------------------------ > > Message: 8 > Date: Tue, 17 Oct 2006 16:59:04 -0300 > From: "Pablo Pablo" <[EMAIL PROTECTED]> > Subject: Re: progressbar > To: "Advocacy, chit-chat and event planning in Chile" > <[email protected]> > Message-ID: > <[EMAIL PROTECTED]> > Content-Type: text/plain; charset="iso-8859-1" > > alguien sabe como me puedo liberar de esta lista > ya no quiero estar inscrito > > Ayuda Plissss > > > > 2006/10/17, Claudio Saavedra <[EMAIL PROTECTED]>: > > > > On Tue, 2006-10-17 at 12:36 -0300, Alejandro Valdes Jimenez wrote: > > > Estimados... > > > > > > ¿cual será la manera de implementar un progressbar mientras se > ejecuta > > > una tarea? > > > > > > pregunto esto ya que necesito que mientras ejecuto una acción, se > active > > > la barra de progreso hasta que termine la acción, sin embargo, > solo he > > > logrado que la barra se active una vez terminada la acción. > > > > > En el ciclo donde ejecutas tu tarea, usa gtk_events_pending (): > > > > /* computation going on */ > > ... > > while (gtk_events_pending ()) > > gtk_main_iteration (); > > ... > > /* computation continued */ > > > > > > Claudio > > > > -- > > Claudio Saavedra <[EMAIL PROTECTED]> > > > > > ------------ próxima parte ------------ > Se ha borrado un adjunto en formato HTML... > URL: /archives/gnome-cl-list/attachments/20061017/1c13986f/attachment.htm > > Fin de Resumen de gnome-cl-list, Vol 21, Envío 11 > ************************************************* > > > -- -- Alejandro Valdés Jiménez. Area Plataforma DTI - Dirección de Tecnologías de Información Universidad de Talca. Talca - Chile. Teléfono: (56) (71) 200408
