Bonjour,
Je voudrais afficher une image (dans un QLabel ) qui se trouve dans un QScrollArea.
En fait dans ma fenêtre j'ai une partie ou j'affiche une image, et je voudrais des scroll car l'image seras plus grand que la zone d'affichage. (mais c'est voulu)
J'ai utiliser Qt disigner pour faire mon interface, celui ci m'a générer cela pour cette partie :
Dans mon init, je fait cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 self.scrollArea = QtWidgets.QScrollArea(self.centralwidget) self.scrollArea.setGeometry(QtCore.QRect(323, 0, 421, 541)) self.scrollArea.setBaseSize(QtCore.QSize(0, 0)) self.scrollArea.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn) self.scrollArea.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn) self.scrollArea.setWidgetResizable(True) self.scrollArea.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTop|QtCore.Qt.AlignTrailing) self.scrollArea.setObjectName("scrollArea") self.scrollAreaWidgetContents = QtWidgets.QWidget() self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0, 0, 406, 526)) self.scrollAreaWidgetContents.setAutoFillBackground(True) self.scrollAreaWidgetContents.setObjectName("scrollAreaWidgetContents") self.lab_Image = QtWidgets.QLabel(self.scrollAreaWidgetContents) self.lab_Image.setGeometry(QtCore.QRect(10, 30, 381, 461)) self.lab_Image.setText("") self.lab_Image.setScaledContents(False) self.lab_Image.setWordWrap(False) self.lab_Image.setObjectName("lab_Image") self.scrollArea.setWidget(self.scrollAreaWidgetContents)
Mais je n'est pas la possibilité d'utiliser le scrolle, il sont grisé ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 # charge une image pixmap = QPixmap("/home/pi/Pictures/Cam1/Image6s_03.jpg") self.lab_Image.setPixmap(pixmap) self.lab_Image.resize(pixmap.size()) self.lab_Image.adjustSize() self.lab_Image.setGeometry(QtCore.QRect(0,0,pixmap.width(),pixmap.height())) self.scrollArea.setWidgetResizable(True) self.scrollAreaWidgetContents.setGeometry(QtCore.QRect(0,0,pixmap.width(),pixmap.height())) #self.scrollArea.horizontalScrollBar().value = pixmap.width()#.setvalue(pixmap.width())
Comment que c'est ti que l'on fait ?
Merci de votre aide.
Stéphane
Partager