sous OS windows, ouverture d'un email et d'un lien web

sous OS windows, ouverture d'un email et d'un lien web - Python - Programmation

Marsh Posté le 26-10-2004 à 23:44:26    

Je réalise une application avec IHM utilisant TKinter.
Un objet Texte Tkinter affiche les coordonnées d'une personne avec email et adresse web.
J'utilise des tag pour surligner l'@mail et le lien web, car je veux que l'utilisateur puisse cliquer dessus pour automatiquement ouvrir le logiciel approprié (navigateur web ou client de messagerie).
Le code que j'ai réalisé est le suivant:
 

Code :
  1. def __affLigne(self,ligne):
  2.         "fonction à utiliser pour afficher une ligne de la base de données"
  3.         lChamps = ligne.split(';')
  4.         msg1 = "%s,\nAdresse: %s,\nTéléphone: %s, Fax: %s,\n@mail: " % (lChamps[0].strip(),lChamps[1].strip(),lChamps[2].strip(),lChamps[3].strip())
  5.         self.wdAff.insert(END,msg1)
  6.         self.wdAff.insert(END,lChamps[4].strip(),'tag_email')
  7.         self.wdAff.tag_config('tag_email',foreground='blue',underline=1)
  8.         self.wdAff.tag_bind('tag_email','<Button-1>',self.__email)
  9.         self.wdAff.insert(END,", Site web: " )
  10.         self.wdAff.insert(END,"www.yahoo.fr",'tag_url') #url fixe pour les tests
  11.         self.wdAff.tag_config('tag_url',foreground='blue',underline=1)
  12.         self.wdAff.tag_bind('tag_url','<Button-1>',self.__url)
  13.         self.wdAff.insert(END,"\n------------------------------------------------------------------------------------------\n" )
  14.         self.wdAff.see("0.0" )
  15.     def __email(self,event=None):
  16.         "fonction appelée lors d'un clique gauche sur un lien email"
  17.         [idmail0,idmail1] = self.wdAff.tag_nextrange('tag_email',"0.0" )
  18.         mail = self.wdAff.get(idmail0,idmail1)
  19.         os.startfile("mailto:"+mail) #self.__affiche(mail)
  20.         self.__affiche("...fenêtre email en cours d'affichage..." )
  21.     def __url(self,event=None):
  22.         "fonction appelée lors d'un clique gauche sur un lien web"
  23.         [idurl0,idurl1] = self.wdAff.tag_nextrange('tag_url',"0.0" )
  24.         url = self.wdAff.get(idurl0,idurl1)
  25.         os.startfile(url) #self.__affiche(url)
  26.         self.__affiche("...site web en cours d'affichage..." )


 
Cela fonctionne sur ma plateforme, Windows XP, Python 2.3.3, Outlook 2002 et IE6.0
Je voudrais savoir si mon code est correcte, ou si c'est du bidouillage de bas étage ;-)
Si je peux espérer que cela fonctionne sur toute plateforme avec OS windows, quelque soit le navigateur web et le client de messagerie (en partciculier Lotus Note).
Mon but est de générer après un .exe avec py2exe pour le distribuer sur +ieurs PC avec OS windows, navigateur à priori IE, client de messagerie à priori Outlook et Lotus. Sur mes PC, ça fonctionne ok, mais j'ai pas Lotus....
 
Merci par avance pour vos avis

Reply

Marsh Posté le 26-10-2004 à 23:44:26   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed