IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxPython Discussion :

[wxPython] debutant qui tente d'apprendre...


Sujet :

wxPython

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    519
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 519
    Par défaut [wxPython] debutant qui tente d'apprendre...
    Bonjour,

    Dans wxPython (je debute).
    j'ai mis un wxNotebookdans une Frame.
    Sur chaque page du wxNotebook, je mets un wxTextCtrl.
    Comment est-ce que je peux avoir le texte du wxTextCtrl d'une page donnée ?

    je mets un bout de code au cas ou ca peut aider. j'ai ptetre tout mal fait depuis le debut!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    import os
    from wxPython.wx import *
     
    ID_OPEN=111
    ID_NEW=112
    ID_SAVE=113
    class MainWindow(wxFrame):
    	def __init__(self,parent,id,title):
    		wxFrame.__init__(self,parent,wxID_ANY, title, size = (600, 400), style=wxDEFAULT_FRAME_STYLE|wxNO_FULL_REPAINT_ON_RESIZE)
     
    		self.control = wxNotebook(self, 1)
    		filemenu= wxMenu()
    		filemenu.Append(ID_NEW, "&Nouveau"," Nouveau fichier")
    		filemenu.Append(ID_OPEN, "&Open"," Ouvrir un fichier")
    		filemenu.Append(ID_SAVE, "&Save"," Sauve un fichier")
    		menuBar = wxMenuBar()
    		menuBar.Append(filemenu,"&File")
    		self.SetMenuBar(menuBar)
     
    		EVT_MENU(self, ID_OPEN, self.OnOpen)
    		EVT_MENU(self, ID_NEW, self.OnNew)
    		EVT_MENU(self, ID_SAVE, self.OnSave)
    		self.Show(true)
     
    	def OnOpen(self,e):
    		self.dirname = ''
    		dlg = wxFileDialog(self, "Choose a file", self.dirname, "", "*.*", wxOPEN)
    		if dlg.ShowModal() == wxID_OK:
    			self.filename=dlg.GetFilename()
    			self.dirname=dlg.GetDirectory()
    			f=open(os.path.join(self.dirname,self.filename),'r')
    			win = wxTextCtrl(self.control, -1, style=wxTE_MULTILINE)
    			win.SetValue(f.read())
    			nom=self.filename
    			self.control.AddPage(win, nom, true)
    			f.close()
    		dlg.Destroy()
     
    	def OnNew(self,e):
    		win = wxTextCtrl(self.control, -1, style=wxTE_MULTILINE)
    		nom="document " + str(self.control.GetPageCount())
    		self.control.AddPage(win, nom, true)
     
    	def OnSave(self,e):
    		self.dirname = ''
    		id=self.control.GetSelection()
    		nom=self.control.GetPageText(id)
    		dlg = wxFileDialog(self, "Save", self.dirname, nom, "*.*", wxSAVE)
    		if dlg.ShowModal() == wxID_OK:
    			self.filename=dlg.GetFilename()
    			self.dirname=dlg.GetDirectory()
    			f=open(os.path.join(self.dirname,self.filename),'w')
    			f.write(self.control.wxTextCtrl.GetValue())
    			f.close()
    		dlg.Destroy()
     
     
    app = wxPySimpleApp()
    frame = MainWindow(None, -1, "Sample editor")
    app.MainLoop()
    voila, c'est dans la methode OnSave que je veux ecrire le string qui est dans le TextCtrl dans un fichier.
    j'ai laissé mon lamentable essai:
    f.write(self.control.wxTextCtrl.GetValue())

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 121
    Par défaut
    Essaie
    f.write(self.control.GetPage(id).GetValue())

    Pour te former, les cours et tutoriels Python : https://python.developpez.com/cours/

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    519
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 519
    Par défaut
    merci ! ca marche bien.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MiryamK] Miryam une novice qui à soif d'apprendre
    Par MiryamK dans le forum Présentations
    Réponses: 2
    Dernier message: 18/10/2014, 16h44
  2. Réponses: 0
    Dernier message: 17/05/2010, 09h28
  3. Réponses: 1
    Dernier message: 28/04/2006, 16h55
  4. [wxPython] Application qui ne s'arrete pas....
    Par Mr Hyde dans le forum wxPython
    Réponses: 9
    Dernier message: 10/11/2005, 16h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo