Hola xKuZz:
Muchas gracias por responder.
Al final, sobre la forma 1, por un lado, realmente yo capturo el evento
scenePos(). El problema era que tenía dibujada una cruceta que se mueve de forma solidaria con el puntero, y claro....siempre encontraba un item!
Aclarado esta parte, sigo sin saber por qué a mi no me funciona la cosa de forma correcta.
Ahora, desactivando el item de la cruceta, sólo me funciona si
1.- Tengo reimplementada la función mouseMoveEvent() en la subclase que deriva de QGraphicsScene
2.- Tengo reimplementados los métodos "Hover" en la subclase que deriva de QGraphicsEllipseItem.
Y encima de todo no va bien, ya que sólo reacciona al paso del puntero cuando toca otro widget, si no es así, es como si no hubiera pasado nada.
Miro y remiro tu código, que de todas formas es mas o menos como yo lo tengo, y no veo nada diferente.
Sólo se me ocurre que la forma en la que añado objetos a la escena pueda no ser la correcta. Me explico (y de paso pido ayuda por si este método no es muy correcto):
En la clase derivada de QGraphicsScene, tengo un puntero del tipo
micirculo y a forma de añadir círculos a la Escena es:
-Al primer toque del ratón, creo el objeto micirculo a partir del puntero (implementado en mousePressEvent() de la clase derivada QGraphicsScene)
Algo como:
Código C++:
Ver originalmicirculo* c = new micirculo(event->scenePos());
addItem(c);
-Al mover el ratón, y si hay un círculo, éste cambia el tamaño (implementado en mousePressEvent() de la clase derivada QGraphicsScene)
-Al volver a presionar el ratón, el puntero usado para crear el círculo apunta a
nullptr de nuevo, quedándose el circulo creado con su tamaño definitivo y perteneciendo ahora a la escena (por eso entiendo que puedo volver a apuntar a nullptr ya que a partir de ahora ese objeto ya no depende del puntero sino de la escena)
En fin, sólo se me ocurre que este método de alguna forma impida el normal funcionamiento de las funciones del ratón (creo que estoy diciendo una tontería, pero como ya llevo dos días enredando con esto, me da por pensar cualquier cosa por absurda que sea)