wxpython ?

Le
peracciu
Bonjour,

Je tente de développer une petite application, et j'ai quelques petits
problèmes, questions.

Gestion des évènements :

> self.txtEEM = wx.TextCtrl(self.conteneur00,-1,value=str(self.eem))
> self.Bind(wx.EVT_TEXT_ENTER,self.OnPressEnterEEM,self.txtEEM)

> def OnPressEnterEEM(self,evt):

Voici la déclaration d'un champ texte, je voudrais récupérer son
contenue (value) dans la méthode qui gère l'évènement
'OnPressEnterEEM(self,evt)'. Par defaut c'est 'str(self.eem)' mais si
elle est modifiée comme faire ?
Je pensais réussir à partir de la variable evt, mais non rien a faire
je ne trouve pas ! merci d'avance.

Même chose avec un radioButton

> for i in self.cbTxt:
> radioButton = wx.RadioButton(self.conteneur20,-1,label=u' '+self.cbT=
xt[i])
> self.panelSizer3.Add(radioButton,(i+1,0),(1,1),wx.EXPAND)
> self.Bind(wx.EVT_RADIOBUTTON,self.OnPressRadioButton,radioButton)

Voici la déclaration, il est construit à partir d'un
dico[indice,label].
Je voudrais via la méthode 'OnPressRadioButton' savoir quelle case est
cochée, dois je rajouter un id dans la déclaration du radioButton, n'y
a t'il pas un moyen d'avoir accès via la variable evt de la méthode
'OnPressRadioButton' au label de la source de l'évènement.

Dessin :

Je voudrais pouvoir tracer des courbes avec WXpython, après recherche
je regrette de ne pas avoir utiliser tkinder !!!

Pour l'instant pour tracer 'une courbe' j'utilise la méthode
DrawPointList !!! mais le résultat est très moyen, il y a bien la
méthode DrawLineList mais je n'arrive pas a la faire marcher ça
retourne toujours une erreur.
N'y a t il pas d'autre méthode pour tracer une droite entre deux
points ?

Solution de folie envisager, peut on mixer tkinder et wxpython, car si
oui je fais mes courbe dans un panel tkinder et je l'ajoute dans mon
appli.
Autre solution utiliser tkinder pour générer un jpeg et l'afficher
dans mon application.

Mais bon j'aimerais que ça reste des solutions à envisager, il doit
bien y avoir un moyen avec wxpython ! merci pour votre aide.

Dernière chose, si vous savez ou je peux trouver un petit script
(wxpython) qui exporte un wx.Panel en jpeg, eps ou bmp, merci
d'avance.

cdlt P
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Amaury Forgeot d'Arc
Le #14492921
Bonsoir,
a écrit :
Bonjour,

Je tente de développer une petite application, et j'ai quelques petits
problèmes, questions.

Gestion des évènements :

self.txtEEM = wx.TextCtrl(self.conteneur00,-1,value=str(self.eem))
self.Bind(wx.EVT_TEXT_ENTER,self.OnPressEnterEEM,self.txtEEM)


...
def OnPressEnterEEM(self,evt):



Voici la déclaration d'un champ texte, je voudrais récupérer son
contenue (value) dans la méthode qui gère l'évènement
'OnPressEnterEEM(self,evt)'. Par defaut c'est 'str(self.eem)' mais si
elle est modifiée comme faire ?
Je pensais réussir à partir de la variable evt, mais non rien a faire
je ne trouve pas ! merci d'avance.



evt.GetObject() ramène le contrôle qui a généré l'événement.
Dans ton cas, quelque chose comme
evt.GetObject().GetValue()
devrait faire l'affaire

Même chose avec un radioButton

for i in self.cbTxt:
radioButton = wx.RadioButton(self.conteneur20,-1,label=u' '+self.cbTxt[i])
self.panelSizer3.Add(radioButton,(i+1,0),(1,1),wx.EXPAND)
self.Bind(wx.EVT_RADIOBUTTON,self.OnPressRadioButton,radioButton)



Voici la déclaration, il est construit à partir d'un
dico[indice,label].
Je voudrais via la méthode 'OnPressRadioButton' savoir quelle case est
cochée, dois je rajouter un id dans la déclaration du radioButton, n'y
a t'il pas un moyen d'avoir accès via la variable evt de la méthode
'OnPressRadioButton' au label de la source de l'évènement.



Comme ci-dessus, evt.GetObject() ramène le radioButton, mais là, je
crois que c'est GetLabel() qui ramène le libellé.

Dessin :

Je voudrais pouvoir tracer des courbes avec WXpython, après recherche
je regrette de ne pas avoir utiliser tkinder !!!

Pour l'instant pour tracer 'une courbe' j'utilise la méthode
DrawPointList !!! mais le résultat est très moyen, il y a bien la
méthode DrawLineList mais je n'arrive pas a la faire marcher ça
retourne toujours une erreur.
N'y a t il pas d'autre méthode pour tracer une droite entre deux
points ?

Solution de folie envisager, peut on mixer tkinder et wxpython, car si
oui je fais mes courbe dans un panel tkinder et je l'ajoute dans mon
appli.
Autre solution utiliser tkinder pour générer un jpeg et l'afficher
dans mon application.



Peut-être, mais alors il faut mixer les boucles d'événements des deux
systèmes, et c'est le début de beaucoup de soucis.

Mais bon j'aimerais que ça reste des solutions à envisager, il doit
bien y avoir un moyen avec wxpython ! merci pour votre aide.

Dernière chose, si vous savez ou je peux trouver un petit script
(wxpython) qui exporte un wx.Panel en jpeg, eps ou bmp, merci
d'avance.



Sous Windows, la librairie PIL sait le faire:
http://python.developpez.com/cours/pilhandbook/php/imagegrab.php
Quelque chose comme
rect = monpanel.GetScreenRect()
rgb = ImageGrab.grab((rect.left, rect.top, rect.right, rect.bottom))


Par ailleurs, as-tu essayé la fameuse *démo* de wxPython? C'est une mine
d'exemples, on peut voir le code source à l'oeuvre et même le modifier
pour tester de nouvelles combinaisons ! Indispensable. Si si, J'insiste.

--
Amaury
peracciu
Le #14492911
Merci beaucoup,

Pour les évènement lorsqu'il n'y a qu'un objet écouté on peut
directement utiliser objet.GetLabel() ou GetValue().

Pour les radiobox en faite ma déclaration posait problème car seul le
dernier existait ! dans le for ils sont écrasés, j'ai donc utilisé un
listbox je crois, et sa marche très bien merci.

Pour le reste je vais suivre vos conseils merci.
Publicité
Poster une réponse
Anonyme