begin process at 2010 09 04 18:35:58
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Application complète

 > REPERT V1.4 (REPERTOIRE D'ADRESSES, TÉLÉPHONES ET MAILS)

REPERT V1.4 (REPERTOIRE D'ADRESSES, TÉLÉPHONES ET MAILS)


 Information sur la source

Note :
Aucune note
Catégorie :Application complète Classé sous :tkinter, sqlite, listbox, mailing, impression Niveau :Débutant Date de création :10/12/2007 Date de mise à jour :10/12/2007 19:08:57 Vu / téléchargé :2 887 / 180

Auteur : yveslc

Ecrire un message privé
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

Il s'agit d'un gestionnaire de répertoire d'adresse en Python + Tkinter sous base SQL (SQLite) avec possibilités de recherches par différents critères, envoi direct de mails et impression (avec un appel à un sous programme écrit en wxpython).
Ce n'est pas une nouveauté en soi, mais il est totalement fonctionnel et sait gérer les accents français (même mouliné par Py2exe).
J'utilise ce logiciel sous Windows XP où il fonctionne parfaitement.
NB : il ne faut pas dissocier les 2 programmes repert.py et imprimrepert.pyw. La base de données se créera automatiquement dans le même répertoire.

Source

  • voir sources.zip
  • Cette version 1.4 ajoute a la version 1.3 la fonction construire_chaine(row) commune aux 2 listes <recherche()> et <lister()> en remplacement du code qui existait (en double) dans chacune de ces deux fonctions afin d'obtenir des lignes dans les listbox respectives bien alignées même en présence d'accentuation dans les données.
  • def construire_chaine(row) :
  • rnum=str(row[0])
  • rnom=str(row[1])
  • rnom1=rnom.decode('utf-8')
  • rpren=str(row[2])
  • rpren1=rpren.decode('utf-8')
  • radre=str(row[3])
  • radre1=radre.decode('utf-8')
  • rcopo=str(row[4])
  • rcopo1=rcopo.decode('utf-8')
  • rcomm=str(row[5])
  • rcomm1=rcomm.decode('utf-8')
  • rtel1=str(row[6])
  • rtel11=rtel1.decode('utf-8')
  • rtel2=str(row[7])
  • rtel21=rtel2.decode('utf-8')
  • chaine= (rnum+b[0:5-len(rnum)]+rnom+b[0:31-len(rnom1)]+rpren+b[0:21-len(rpren1)]+radre+b[0:36-len(radre1)]
  • +rcopo+b[0:7-len(rcopo1)]+rcomm+b[0:31-len(rcomm1)]+rtel1+b[0:16-len(rtel11)]+rtel2+b[0:16-len(rtel21)])
  • return chaine
voir sources.zip
Cette version 1.4 ajoute a la version 1.3 la fonction construire_chaine(row) commune aux 2 listes <recherche()> et <lister()> en remplacement du code qui existait (en double) dans chacune de ces deux fonctions afin d'obtenir des lignes dans les listbox respectives bien alignées même en présence d'accentuation dans les données.

def construire_chaine(row) :
    rnum=str(row[0])        
    rnom=str(row[1])
    rnom1=rnom.decode('utf-8')
    rpren=str(row[2])
    rpren1=rpren.decode('utf-8')
    radre=str(row[3])
    radre1=radre.decode('utf-8')
    rcopo=str(row[4])
    rcopo1=rcopo.decode('utf-8')
    rcomm=str(row[5])
    rcomm1=rcomm.decode('utf-8')
    rtel1=str(row[6])
    rtel11=rtel1.decode('utf-8')
    rtel2=str(row[7])
    rtel21=rtel2.decode('utf-8')
    chaine= (rnum+b[0:5-len(rnum)]+rnom+b[0:31-len(rnom1)]+rpren+b[0:21-len(rpren1)]+radre+b[0:36-len(radre1)]
       +rcopo+b[0:7-len(rcopo1)]+rcomm+b[0:31-len(rcomm1)]+rtel1+b[0:16-len(rtel11)]+rtel2+b[0:16-len(rtel21)])
    return chaine

 Conclusion

Je met ce source à disposition car il peut apporter des réponses à de nombreuses questions que se pose un débutant en python que j'étais il n'y a pas longtemps (et que je suis toujours). Quand aux experts, ils seront les bienvenus à apporter leurs critiques car je me doute bien que le code n'est pas le plus élégant qui soit, il y a sûrement des améliorations possibles. N'hésitez pas à le dire, c'est comme ça qu'on arrive à progresser et je vous en remercie.
Yves Le Chevalier

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

10 décembre 2007 19:08:57 :
Je me suis aperçu, malgré tous les tests que j'avais fait, que les caractères accentués provoquaient un décalage dans les listbox d'autant de caractères qu'il y avait d'accents(2 octets par accent). Il faut donc concaténer les chaines unicodes pour garder les accents, mais en tenant compte de leur longueur sous forme décodée pour pouvoir bien aligner les données en colonnes.

 Sources du même auteur

Source avec Zip Source avec une capture RENOMMEUR DE FICHIERS PAR LOTS
Source avec Zip Source avec une capture HORLOGE-CHRONOMÈTRE-RÉVEIL
Source avec Zip Source avec une capture BIBLIO : GESTIONNAIRE DE BIBLIOTHÈQUE
Source avec Zip Source avec une capture COMPACTEUR D'IMAGES JPEG PAR LOT

 Sources de la même categorie

Source avec une capture RECHERCHE DE DOUBLONS DANS DES DOSSIERS. par Rano Its
Source avec Zip Source avec une capture ILLUSTRATION DE SINUS ET DE COSINUS par calogerogigante
Source avec Zip Source avec une capture LE MOT LE PLUS LONG PAR DICO par Clempython
Source avec Zip Source avec une capture EQUATION STANDARD DE LA DROITE par calogerogigante
Source avec Zip Source avec une capture RENOMMEUR DE FICHIERS PAR LOTS par yveslc

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture CASSE BRIQUE par elnabo
Source avec Zip Source avec une capture ILLUSTRATION DE SINUS ET DE COSINUS par calogerogigante
Source avec Zip Source avec une capture EQUATION STANDARD DE LA DROITE par calogerogigante
Source avec Zip CALCULATRICE SIMPLICISTE SOUS TKINTER par elnabo
Source avec Zip Source avec une capture RENOMMEUR DE FICHIERS PAR LOTS par yveslc

Commentaires et avis

Commentaire de aera group le 10/12/2007 18:12:12

Ton code m'interresse énormémant, mais je ne sais pas où tu téléchatge la librérie sqlite3 !!!

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

scrollbar dans scrollbox avec TKinter [ par MHI ] Est-ce que quelqu'un sait comment ajouter les scrollbar à une scrollbox :J'ai essayé ceci :lstFile = Tkinter.Listbox(frmMain)lstFile.place(x = 20, y = checkButton avec TKinter [ par MHI ] comment faire pour tester si un checkButton est coché ? [wxPython] apperçu avant impression multipages [ par dj_djocker ] au secour!!!!!!une semaine que je cherche partout mais rien a faire.a travers un logiciel cr&#233;e en python je cr&#233;e une impression d'au moins u Probleme avec TKinter [ par titasse ] Bonjour, je debute en python. J'ai un probleme lorsque je veux importer TKinter avec la commande from TKinter import * j'ai le message suivant : Imp au sujet de Tkinter et le module turtle [ par nico1900 ] from turtle import *forward(120)left(90)&nbsp;color('red')&nbsp;forward(80)bon en fait je voulais tester le module turtle&nbsp;avec&nbsp;l e code ci-d impression [ par jinfido ] j'aimerais utuliser, mon iprimante mais, je ne trouves pas la commande thx, Un Canvas comme dans Tkinter, mais pour wxPython [ par samurize ] Slt tout le monde. &nbsp; Voila tout est dans le titre (ou a peu pres&nbsp; ) : &nbsp; Je suis &#224; la recherche d'un module pouvant s'integrer da Taille de widgets sous Tkinter [ par Uims ] Bonjour, Quelqu"un saurait comment definir la taille d'un widgets sous tkinter??? Exemple: fen 1 = Tk(taille=600) J'espere que je me fait comprend Ouverture d'un fichier windows (avec Tkinter) [ par Uims ] Bonjour, Je travaille sous python et Tkinter et j'aurai voulu savoir comment dire a python de demarrer (comme on clique sur un fichier) une applicati Tkinter et Python [ par Telimektar1er ] Voila j'ai commenc&#233; e python il y a une semaine et jusqu &#224; aujourd'hui aucun probl&#232;me. Mais voil&#224;, je viens de commencer la cr&#23


Nos sponsors


Sondage...

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales