Bonjour,
Je programme en wxPython et j'aurai voulu savoir comment dériver un objet wx pour faire un bouton personalisé par exemple, avec des informations supplémentaires, mais qu'ils soit quand même pris pour un bouton normal lorsque je lui applique des bindings car, lorsque l'on fait ça :
class MonBouton(wx.button):
def __init__(self):
wx.bouton(args)
self.mySupInfo="InfoSupplémentaire"
et qu'en suite je fais un binding
MyBut=MonBouton()
MyBut.Bind(wx.EVT_BUTTON,MyFunc)
Il me dit quelque chose du genre
wxWindow expected (MonBouton) received
Le polymorphisme n'existe pas en python ?? ou bien n'est-il pas implémenté pour les objets wxPython ?? Y a-t-il moyen de forcer l'interprêteur à le prendre en tant que wx.Button (cast en C)???
Sinon, comment puis-je récupérer les bindings originaux de mon objet wx.button pour pouvoir gérer les évênements comme normalement avc ma propre classe.
J'ai pensé éventuellement à faire ça :
class MonBouton(wx.button):
def __init__(self):
self.wxid=wx.bouton(args)
self.mySupInfo="InfoSupplémentaire"
MyBut=MonBouton()
MyBut.wxid.Bind(wx.EVT_BUTTON,MyFunc)
Cela fonctionne surement mais je ne trouve pas ça joli, super propre, un peu bidouille. Je viens du C++ et quand j'hérite d'une classe, j'hérite réellement d'une classe, et de tout ce qui va autour, comment puis-je faire ça en python ????
Merci
RV
L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"
Partager