tomar una instantánea de un QGraphicsView
-
18-09-2019 - |
Pregunta
Estoy usando Qt 4.5 y una qgraphicsscene / vista para mostrar el vídeo para el usuario. Me gustaría ofrecer un botón de "tomar un snapshop" y estoy seguro de que hay una manera bastante sencilla mucho más simple de todo lo que estoy pensando. ¿Cómo puedo hacer esto con elegancia?
Por cierto, el código está aquí: http://gitorious.org/handy
Solución
Puede utilizar el método QWidget::grab()
. Este método hace que el widget dado a un mapa de pixels y devuelve que pixmap. A continuación, puede hacer lo que quiera con eso, como guardar en un archivo utilizando QPixmap::save()
.
Otros consejos
QScreen::grabWindow()
y QWidget::grab()
.
Con grabWindow
incluso se puede capturar una ventana exterior de su aplicación, por ejemplo, el programa de captura de pantalla ejemplo:
http://doc.qt.io/qt -5 / qtwidgets-escritorio-pantalla-example.html