design responsive avec python3.4

Le problème exposé dans ce sujet a été résolu.

Bonsoir chers amis je développe une interface responsive pour mon logiciel et j’ai un souci.

Au faite j’utilise les layouts pour créer mon design, dans un de ces layouts il y a un QLabel dans lequel j’ai mis une image, le souci est qu’ a cause de l’image je n’arrive plus a augmenter ni a diminuer la taille de ma fenêtre comme je le faisais auparavant. Je voulais savoir s’il n’est pas possible en même temps que je réduit ou j’augmente la taille de ma fenêtre l’image se réduit ou s’augmente pour pouvoir avoir mon design que je veux.

Merci d’avance pour vos avis?

Je vois deux solutions selon le rendu que tu souhaites :

Si tu ne te soucies pas de conserver le ratio hauteur/largeur, tu peux utiliser une feuille de style pour mettre ton image en fond avec label.setStyleSheet("QLabel{ border-image: url(img.png) 0 0 0 0 stretch stretch; }"). L’image sera automatiquement adaptée à la taille de ton label.

Si tu t’en soucies, le plus simple est d’utiliser paintEvent pour dessiner ton image aux bonnes dimensions :

1
2
3
4
5
6
pix = QPixmap("./img.png")

w = self.width()
h = self.height()
painter = QPainter(self)
painter.drawPixmap(0, 0, pix.scaled(w, h, Qt.KeepAspectRatio)

Merci la deuxième proposition me convient bien mais comment faire pour mettre le tout dans mon QLabel. j’ai taper ce code et mon image ne s’affiche pas:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
self.PhotoHisto = QtGui.QLabel()
pix = QtGui.QPixmap("images/index.jpg")
w = self.width()
h = self.height()
p = QtGui.QPainter(self.PhotoHisto)
p.drawPixmap(0, 0, pix.scaled(w, h, QtCore.Qt.KeepAspectRatio))
self.PhotoHisto.show()


self.histoMenu.addWidget(self.PhotoHisto) #ajout de self.PhotoHisto a mon layout

Merci.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte