Saltar al contenido

Mostrar la imagen en Qt para que se ajuste al tamaño de la etiqueta

Solución:

De hecho, existe una solución muy sencilla para este problema. Hay dos cosas que debe modificar:

  1. Establezca el contenido escalado en verdadero (mencionado anteriormente)
  2. Establezca la política de tamaño de la etiqueta en ignorada

    QLabel lblImage;
    
    lblImage->setPixmap( QPixmap( "big_image.jpg" ) );
    
    lblImage->setScaledContents( true );
    
    lblImage->setSizePolicy( QSizePolicy::Ignored, QSizePolicy::Ignored );
    

Si el lblImage está cambiando de tamaño automáticamente, la imagen se ampliará al tamaño de la etiqueta.

¿QLabel :: setScaledContents (bool) ayuda? También puede haber información útil en el ejemplo del visor de imágenes.

Guarde una copia de su original pixmap alrededor. Luego conecta el resized señal a una ranura (o anular la resizeEvent() función) que implementa esto:

lblImage->setPixmap(pixmap.scaled(lblImage->size(), Qt::KeepAspectRatio, Qt::SmoothTransformation));
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *