| 12
 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
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 
 | #!/usr/bin/python
# *- coding: iso-8859-1 -*
import sys
import os
import string
import wx #importation du modulegraphique wx
import winsound
ID_PARENT = 1000 #control ID de la fenetre principale
 
 
 
#classe fenetre principalemenus et boutons
class LesMenus(wx.Frame):
 def __init__(self, titre):
  wx.Frame.__init__(self, None, ID_PARENT, title = titre, size = (800, 600))
  self.panel = wx.Panel(self, -1, pos=(10,50),size=(300,400))
  self.panel.SetBackgroundColour('black')
  menuFichier = wx.Menu(style = wx.MENU_TEAROFF)
  menuFichier.Append(wx.ID_EXIT, "&Quitter\tCTRL+q") 
  menuAide = wx.Menu(style = wx.MENU_TEAROFF)
  menuAide.Append(wx.ID_ABOUT, "&A propos ...\tCTRL+N")
 
  #Barre de menu et affichage des menus dans cette barre
  menuBarre = wx.MenuBar() 
  menuBarre.Append(menuFichier, "&Fichier") 
  menuBarre.Append(menuAide, "&Aide") 
  self.SetMenuBar(menuBarre) 
 
  #creation des boutons
  boutonNiveau1 = wx.Button(self.panel, -1, "Recherche", pos=(200, 200))
  boutonNiveau2 = wx.Button(self.panel, -1, "Ajouter", pos=(200, 250))
 
  boutonAide = wx.Button(self.panel, -1, "Aide", pos=(600, 415))
  boutonExit = wx.Button(self.panel, -1, "Quitter", pos=(700, 415))
 
  #evenements des menus
  wx.EVT_MENU(self, wx.ID_EXIT, self.OnExit) 
  wx.EVT_MENU(self, wx.ID_ABOUT, self.OnAbout) 
 
  #evenements des boutons
  self.Bind(wx.EVT_BUTTON, self.OnExit, boutonExit)
  self.Bind(wx.EVT_BUTTON, self.OnAbout, boutonAide)
  self.Bind(wx.EVT_BUTTON, self.search, boutonNiveau1)
  self.Bind(wx.EVT_BUTTON, self.EcrireFichier, boutonNiveau2)
 
 
 #definition du menu quitter
 def OnExit(self, evt): 
 
  self.Destroy() 
 
 #definition du menu a propos
 def OnAbout(self, evt):
  d = wx.MessageDialog(self, "Petit ageinda", "A propos :Diagnostique ", wx.OK)
  d.ShowModal()
  d.Destroy()
 
 
 def search(self, evt):
#nmf est nom de mon fichier
  nmf = 'lecture.txt'
#db est un variable quelconque, don le nom de mon fichier et un paramètre r pour read 
  db = file(nmf,'r')
#Db.readlines pour lire tous les lignes. A ne pas oublier le s a la fin de line
  liste = db.readlines()
 
#Db.close veut dire fermer le fichier.
  db.close()
  n = wx.TextEntryDialog(self,"Entrez le nom ici","",style = wx.OK | wx.CANCEL | wx.CENTRE)
#afficher la fenêtre tant et aussi longtemps que l'on ne la fermera pas
  reponse = n.ShowModal()
#Récupération du text entré
  nn = n.GetValue()
  if reponse == wx.ID_OK or n == "":
   winsound.PlaySound('c:/Python25/wav_tel/bing.wav', winsound.SND_NODEFAULT)
 
   #n.Destroy()
  #recuperation du nombre en string
  for i in liste:
   if i.find(nn) <> -1:
    winsound.PlaySound('c:/Python25/wav_tel/bing.wav', winsound.SND_NODEFAULT)
    n = wx.MessageDialog(self, "le résultat est:  "+i, "affichage du résultat", wx.OK) 
    n.ShowModal()
    n.Destroy()
    return
 
 
 def EcrireFichier(self, evt):
 
  fichier = open('lecture.txt', 'a')
  ligne = wx.TextEntryDialog(self,"Entrez le texte ici","",style = wx.OK | wx.CANCEL | wx.CENTRE)
#afficher la fenêtre tant et aussi longtemps que l'on ne la fermera pas
  reponse = ligne.ShowModal()
#Récupération du text entré
  nn = ligne.GetValue()
  #recuperation du nombre en string
  if nn != '':
   fichier.write(nn +"\n")
   fichier.close()
   ligne.Destroy()
   return
 
#la classe de l'application
class MonApp(wx.App): 
 def OnInit(self): 
  fen = LesMenus("Numéro de Téléphone") 
  fen.Show(True) 
  self.SetTopWindow(fen) 
  return True 
 
#boucle principale
app = MonApp()
app.MainLoop() | 
Partager