Question

Comment superposer des widgets dans Qt?

Je souhaite créer des widgets et les placer hors de la présentation, mais plutôt modifier leur taille et leur position lorsque la géométrie d'un autre widget est modifiée.

Quelque chose comme les boutons de la capture d'écran:

alt text

Était-ce utile?

La solution

Il vous suffit de créer votre QPushButton (ou n'importe quel QWidget), d'indiquer son QWidget parent, puis de l'afficher.

Ne l'ajoutez pas à la mise en page parente, sinon vous ne pourrez pas le déplacer comme vous le souhaitez.

N'oubliez pas d'indiquer son parent, sinon il sera affiché en tant que QWidget indépendant.

Dans ces conditions, votre QPushButton sera considéré comme un enfant du QWidget mais pas un membre de la présentation du parent. Donc, ce sera un "flottant" enfant et vous devez gérer son comportement lors du redimensionnement de QWidget du parent.

Si vous souhaitez un comportement unifié pour tous les boutons de superposition, vous devez créer une sous-classe QLayout et redéfinir le comportement des membres.

Autres conseils

S'ils sont les enfants d'un widget sans mise en page, vous devriez pouvoir les déplacer comme bon vous semble, je pense.

J'avais besoin d'un widget comme celui-ci pour un projet sur lequel je travaillais. J'ai donc pris conseil auprès de Patrice et écrit ce code (Python) Incrustation du widget PyQt4

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top