[Kde-devel-es] refresco rápido de QWidgetList

Carles Pina i Estany carles at pina.cat
Mon Mar 26 23:39:42 CEST 2007


Hola,

Imaginad que tengo una aplicación tal como:
http://pinux.info/qdacco/3.html

Tengo intención que cuando se escriba "a" la lista de abajo me propanga
todo lo que empieza con "a". Después si escribo "am" pues lo que empieza
por "am".

He hecho una prueba de actualizar el contenido cuando el usuario cambia
el texto del QLineEdit. Va bien, pero si se escribe rápido se nota que
hay un retraso entre pulsaciones. Si se escribe "aaaaaaaaaaaaa" se nota
que parpadea (flicker o como se llame). Si escribo rápido también se
nota un parpadeo. OJO: diría que hacia un hide y show en otros sitios!!!
puede ser que el parpadeo sea culpa mia (hide+show), pero el retraso
entre teclas no creo que lo arregle sin el show/hide (además quiero
pintar unas cosas de color, etc.)

Tendré que usar threads. He usado threads con Python+Qt, y lo que hacia
era procesar algo "largo" en el hijo y después enviaba una señal de
notificación de "proceso terminado" o "voy por el 10%" o parecido (y el
padre actualizaba widgets, etc.)

Pero aquí el hijo debería rellenar el QWidgetList, y si me acuerdo bien
esto NO era conveniente :-) (modificar los Widgets del padre). 

Ah, ya sé qué haría. Que el hijo cree un nuevo QWidgetList. En el
postEvent o como se llame podia mandar, creo, objectos. Mandar el nuevo
QWidgetList y que el padre cuando lo reciba haga el cambiazo (elimine
uno, ponga el otro. O hide+show, etc.).

Es esta una buena solución? Algunas de mejores? No sé si me complico
demasiado la vida con este camino.

Muchas gracias,

-- 
Carles Pina i Estany		GPG id: 0x8CBDAE64
	http://pinux.info	Manresa - Barcelona


More information about the Kde-devel-es mailing list