2009-05-26 4 views
1

J'ai une question. Il y a une classe d'application dans mon programme. Il est hérité de QtGui.QMainWindow. Dans ini J'appelle ma propre méthode qui fonctionne avec graphique. Et il devrait être appelé avant l'événement de redimensionnement. Comment puis je faire ça? Merci.Python et Qt (PyQt) - méthode d'appel avant l'événement de redimensionnement

EDIT: Comme vous pouvez voir here la valeur de l'événement resize est 14, et show event est 17. Donc je devrais trouver l'événement avec moins de 14 valeur.

J'ai trouvé mon problème. Dans le constructeur avant de créer le handle de l'image, je suis en train de déplacer la fenêtre vers une position ... Donc, pendant cette action, resizeEvent appelle. Désolé pour cette question.

+0

Pourquoi avez-vous besoin de cela? –

Répondre

1

Vous pouvez remplacer dans votre classe la méthode resizeEvent (qui QMainWindows hérite de QWidget), voir http://doc.trolltech.com/4.4/qwidget.html#resizeEvent - dans votre override, appelez votre autre code, puis déléguer le reste du travail à la version du parent de la méthode.

+0

Je l'ai déjà fait. En quelques mots: dans un événement de redimensionnement, je dessine un arrière-plan de fenêtre, mais l'objet qui a le gestionnaire de l'image est appelé dans __init__. Ainsi, lors de la redimensionnement des appels d'événement, il n'y a pas de gestionnaire pour l'image, mais la deuxième appel de cet événement est correct. – Ockonal

+0

Alex, il est probablement préférable de créer un lien vers la dernière version de l'API de Qt. PyQt travaille actuellement avec 4.4 –

+0

oui, bon point - éditer ma réponse pour résoudre ce problème, tx. –