[pyar] [PyAr] [PyQt] Problema con QTextCharFormat

Diego Sarmentero diego.sarmentero en gmail.com
Jue Ene 13 17:39:26 ART 2011


Perdon si me exprese mal.
Pero la idea es que el ToolTip aparezca con un evento de Mouse Over,
como funciona los tipicos ToolTip.

Para ser mas claro con el ejemplo, toma el caso de un IDE que te
muestra distintas lineas del código con errores, vos no queres que en
cualquier parte del Editor te muestre el ToolTip, sino que cuando
pones el mouse sobre una de las lineas de errores, te muestre un
ToolTip con la descripción precisa del error de esa linea (que
obviamente puede ser distinto al error de 2 lineas más arriba).

Ese sería el caso concreto...
En Qt cuando vos le asignas un ToolTip a un componente, este se
muestra automáticamente al dejar el mouse encima... como
QTextCharFormat tiene también para setear un ToolTip, yo asumi que
tiene la misma funcionalidad, que cuando dejas el mouse encima te lo
muestra... pero en este ejemplo que pasa, eso no sucede...

El día 13 de enero de 2011 17:32, Alejandro Santos
<listas en alejolp.com> escribió:
> 2011/1/13 Diego Sarmentero <diego.sarmentero en gmail.com>:
>> Claro, pero ahí caigo en la misma, eso me sirve si reimplemento un
>> evento de mouse para ir leyendo las posiciones globales cuando el
>> mouse se sitúa sobre una palabra, obtener en base a las posiciones
>> globales las relativas al componente de texto y averiguar a que linea
>> corresponden jejeje esa es la solución que quería evitarme :P
>>
>
> Diego, ese no era tu problema. Tu mensaje original dice:
>
> 2011/1/12 Diego Sarmentero <diego.sarmentero en gmail.com>:
>> La clase QTextCharFormat tiene un método "setToolTip", que lo estoy
>> seteando como se ve en el ejemplo, pero no pasa nada, el ToolTip nunca
>> aparece.
>
> Si leo bien tu mensaje, tu problema era que el ToolTip no aparece.
>
> La causa era porque faltaba que se dispare el evento de "Che QT, te
> toca mostrar el ToolTip". Eso ocurre cuando se dispara el timer
> interno del Widget, o cuando vos le decís explicitamente que se
> muestre. Eso se hace con QToolTip.showText(...).
>
> Si queres conocer las coordenadas del cursor en forma de QPoint, eso
> se hace con:
>
>  self.text.cursorRect().bottomLeft()
>
> Todo junto queda:
>
>  QToolTip.showText(self.mapToGlobal(self.text.cursorRect().bottomLeft()),
> word, self.text)
>
> Y efectivamente, el ToolTip se está mostrando justo abajo de la palabra:
>
>  http://img703.imageshack.us/img703/5442/tooltipu.png
>
> --
> Alejandro Santos
> http://alejolp.com.ar
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>



-- 
Diego Sarmentero

Blog: http://diegosarmentero.com.ar
Twitter: http://twitter.com/diegosarmentero



More information about the pyar mailing list