Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo controlar QGraphicsView en qt? Al agregar, no se permite el acceso a áreas invisibles.

¿Cómo controlar QGraphicsView en qt? Al agregar, no se permite el acceso a áreas invisibles.

No entiendo muy bien el significado de esta pregunta. Según tengo entendido, la imagen se muestra completamente dentro del rango visual de QGraphicsView. Esto se puede lograr escalando la imagen en QGraphicsScene.

No he ordenado los códigos concretos, hay muchos. Aquí hay una breve explicación:

Primero, obtenga el campo visual de visión:

¿QSize? size = ui-gt;View-gt;maximumViewportSize(); Luego obtenga el tamaño de la imagen.

QGraphicsPixmapItem? *¿a_pixmap_item? =?¿Nuevo? QGraphicsPixmapItem(

QPixmap::from image(an_image));

a_pixmap_item-gt; sceneBoundingRect();

QRectF? origen_rect=? a_pixmap_item-gt; limite rect(); Para que la imagen se muestre completamente en el área de la pantalla, seleccione una proporción adecuada.

¿Flotando? wRatio = tamaño . ancho()/origen _ ancho rect();

¿Flotar? hRatio = tamaño. altura()/origen _ rect altura();

¿Flotante? Zoom = (wRatio? lt? hRatio)? wRatio: hRatio; vuelve a escalar imágenes y escenas.

a_pixmap_item-gt;setScale(zoom)

Escena-gt;setscenarter(r);