Unsolved C++ Mostrar pixmap en Qlabel manteniendo aspecto
-
Hola a todos. Intento mostrar un pixmap en un qlabel, hasta ahí bien. El Qlabel esta un gridlayout por lo que se ajusta al tamaño automaticamente. El problema es que cualquier intento de redimencionar eñ pixmap o el Qlabel no da los resultados adecuados incluso usando Qt::KeepAspectRatio.
¿Hay alguna manera de hacer esto?
Gracias
-
@unDerTech No uses QLabel, sino QGraphicsView+QGraphicsScene+QGraphicsPixmapItem como muestro en esta publicación: https://stackoverflow.com/questions/69183307/how-to-display-image-in-ratio-as-preserveaspectfit-in-qt-widgets/69187941#69187941
-
Muuchas Gracias, miraré a ver si lo entiendo y puedo hacerlo ya que no estoy demasiado puesto en Qt.
Avisaré si lo consigo
Saludos
-
Bueno, me pierdo un poco, uso QtCreator y uso los forms creados desde el editor.
No tengo muy claro como acomodar todo eso a algo que tengo definido como un ui.
Puedes ayudarme?
Gracias -
Bueno, solucionado con esto:
int wi = ui->graphicsView->width(); int he = ui->graphicsView->height(); QGraphicsScene *scene = new QGraphicsScene; scene->addPixmap(pixmap.scaled(wi, he, Qt::KeepAspectRatio)); ui->graphicsView->setScene(scene); ui->graphicsView->show();
No se si estará correcto del todo, pero funciona
Gracias