Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 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 | | Calendrier |
|
|
| mon premier source un carnet adresse | |
| | Auteur | Message |
---|
philou029
Nombre de messages : 49 Age : 57 Localisation : BREST Date d'inscription : 17/10/2010
| Sujet: mon premier source un carnet adresse Dim 17 Oct 2010 - 9:25 | |
| ca fait déjà 2 semaines que j utilise panoramic je suis nouveau dans le forum voici un source qui permet d'enregistrer divers paramètre pour qu"il fonctionne il faut créer un fichier fournisseur.txt dans le répertoire c:\gestomenu j'attends vos critique et vos commentaire voici mon source - Code:
-
LABEL SAISIE label lecture LABEL COMBOBO label editer label modifier label suprimer label editlist DIM LIST$(1000) DIM POINTEUR DIM POINT DIM A DIM b DIM c DIM d DIM e DIM f DIM g dim i DIM A$ ,aa$,bb$,cc$ dim b$ dim v$,c$,d$,e$ DIM VERIF left 0,1 top 0,1 width 0,800 height 0,600 caption 0,"AJOUTER FOURNISSEUR"
picture 1 left 1,660 top 1,10
picture 2 left 2,160 top 2,10 width 2,441 height 2,69
COMBO 3 left 3,100 top 3,110 width 3,324
edit 4 left 4,100 top 4,140 width 4,222
edit 5 left 5,100 top 5,170 width 5,221
edit 6 left 6,100 top 6,200 width 6,161
alpha 8 left 8,6 top 8,110 width 8,87 caption 8,"FOURNISSEUR"
alpha 9 left 9,10 top 9,140 caption 9,"TELEPHONE"
alpha 10 left 10,10 top 10,170 caption 10,"FAX"
alpha 11 left 11,10 top 11,200 caption 11,"NB CLIENT"
alpha 13 left 13,10 top 13,360 width 13,266 caption 13,"JOURS DE LIVRAISON"
check 14 left 14,120 top 14,390 caption 14,"MARDI"
check 15 left 15,230 top 15,390 caption 15,"MERCREDI"
check 16 left 16,340 top 16,390 caption 16,"JEUDI"
check 17 left 17,450 top 17,390 caption 17,"VENDREDI"
check 18 left 18,560 top 18,390 caption 18,"SAMEDI"
check 19 left 19,670 top 19,390 caption 19,"DIMANCHE"
button 20 left 20,440 top 20,460 width 20,188 height 20,45 caption 20,"VALIDER"
check 21 left 21,10 top 21,390 caption 21,"LUNDI"
button 22 left 22,100 top 22,460 width 22,188 height 22,45 caption 22,"RETOUR SOMAIRE" button 31 caption 31,"EDITER" left 31,380 top 31,150 alpha 30 left 30,450 top 30,116 FILE_LOAD 1,"C:\gestomenu\tartefraise.jpg" FILE_LOAD 2,"C:\gestomenu\region_bretagne_logo.bmp" BUTTON 32 CAPTION 32,"MODIFIER" left 32,380 top 32,180 button 33 caption 33,"SUPRIMER" left 33,380 top 33,210 edit 34 left 34,100 top 34,250 width 34,324 edit 35 left 35,100 top 35,275 width 34,324 edit 36 left 36,100 top 36,300 width 34,324 alpha 37 left 37,6 top 37,250 width 37,87 caption 37,"ADRESSE" alpha 38 left 38,6 top 38,275 width 38,87 caption 38,"CODE POSTAL" alpha 39 left 39,6 top 39,300 width 39,87 caption 39,"VILLE" gosub combobo on_click 20,saisie on_click 31,editer on_click 32,modifier on_click 33,suprimer end
saisie: GOSUB LECTURE e$=text$(3) if MID$(e$, 1, 1)="" or MID$(text$(3), 1, 1)=" " then return if verif=156 then caption 30,"FOUNISSEUR DEJA SAISIE" :wait 1000 :caption 30," " : verif=0 :return FILE_OPEN_APPEND 1,"C:\gestomenu\founisseur.txt"
a=CHECKED(21) b=CHECKED(14) c=CHECKED(15) d=CHECKED(16) e=CHECKED(17) f=CHECKED(18) g=CHECKED(19) a$=str$(a)+str$(b)+str$(c)+str$(d)+str$(e)+str$(f)+str$(g)
b$=text$(4) c$=text$(5) d$=text$(6) aa$=text$(34) bb$=text$(35) cc$=text$(36) if text$(3)="" then caption 30,"ENTREZ UN FOURNISSEUR" :wait 1000 :caption 30," " : FILE_CLOSE 1 :return if text$(4)="" then b$="vide" if text$(5)="" then c$="vide" if text$(6)="" then d$="vide" if text$(34)="" then aa$="vide" if text$(35)="" then bb$="vide" if text$(36)="" then cc$="vide" FILE_WRITELN 1,text$(3) FILE_WRITELN 1,b$ FILE_WRITELN 1,c$ FILE_WRITELN 1,d$
FILE_WRITELN 1,aa$ FILE_WRITELN 1,bb$ FILE_WRITELN 1,cc$ FILE_WRITELN 1,a$ FILE_CLOSE 1 gosub combobo return
lecture: e$=text$(3) if MID$(e$, 1, 1)="" or MID$(text$(3), 1, 1)=" " then return FILE_OPEN_READ 1,"C:\gestomenu\founisseur.txt" for i=1 to 500
FILE_READLN 1, V$ if v$=text$(3) AND V$<>"" THEN VERIF=156 :FILE_CLOSE 1:return
if v$="" then FILE_CLOSE 1:return next i FILE_CLOSE 1 return
COMBOBO:
CLEAR 3 text 4,"" text 5,"" text 6,"" text 34,"" text 35,"" text 36,"" FILE_OPEN_READ 1,"C:\gestomenu\founisseur.txt" A=0 for i=1 to 1000 if a=0 then FILE_READLN 1, V$: ITEM_ADD 3,v$ FILE_READLN 1, V$
a=a+1 if a=7 then a=0 if v$="" then FILE_CLOSE 1:return next i FILE_CLOSE 1 return editer: e$=text$(3) if MID$(e$, 1, 1)="" or MID$(text$(3), 1, 1)=" " then return FILE_OPEN_READ 1,"C:\gestomenu\founisseur.txt" for i=1 to 1000 FILE_READLN 1, V$ if text$(3)="" then FILE_CLOSE 1 : return if v$=text$(3) then gosub editlist next i FILE_CLOSE 1 return modifier: e$=text$(3) if MID$(e$, 1, 1)="" or MID$(text$(3), 1, 1)=" " then return A=0 :POINTEUR=0 : POINT=0 FILE_OPEN_READ 1,"C:\gestomenu\founisseur.txt" FOR I=1 TO 1000 POINT=POINT+1 A=A+1 FILE_READLN 1,v$ IF V$=TEXT$(3) AND POINT=1 THEN B=A :POINTEUR=1 IF V$="" THEN C=A LIST$(A)=V$ IF POINT=8 THEN POINT=0 next i IF POINTEUR =0 THEN FILE_CLOSE 1:RETURN FILE_CLOSE 1 FILE_OPEN_WRITE 1,"C:\gestomenu\founisseur.txt" FILE_CLOSE 1 FILE_OPEN_APPEND 1,"C:\gestomenu\founisseur.txt" FOR i=1 to C-1 IF I<B OR I>B+7 THEN FILE_WRITELN 1,list$(i) next i
a=CHECKED(21) b=CHECKED(14) c=CHECKED(15) d=CHECKED(16) e=CHECKED(17) f=CHECKED(18) g=CHECKED(19) a$=str$(a)+str$(b)+str$(c)+str$(d)+str$(e)+str$(f)+str$(g)
b$=text$(4) c$=text$(5) d$=text$(6) aa$=text$(34) bb$=text$(35) cc$=text$(36) if text$(3)="" then caption 30,"ENTREZ UN FOURNISSEUR" :wait 1000 :caption 30," " : FILE_CLOSE 1 :return if text$(4)="" then b$="vide" if text$(5)="" then c$="vide" if text$(6)="" then d$="vide"
FILE_WRITELN 1,text$(3) FILE_WRITELN 1,b$ FILE_WRITELN 1,c$ FILE_WRITELN 1,d$
FILE_WRITELN 1,aa$ FILE_WRITELN 1,bb$ FILE_WRITELN 1,cc$ FILE_WRITELN 1,a$ FILE_CLOSE 1 gosub combobo
return suprimer: e$=text$(3) if MID$(e$, 1, 1)="" or MID$(text$(3), 1, 1)=" " then return A=0 :POINTEUR=0 : POINT=0 FILE_OPEN_READ 1,"C:\gestomenu\founisseur.txt" FOR I=1 TO 1000 POINT=POINT+1 A=A+1 FILE_READLN 1,v$ IF V$=TEXT$(3) AND POINT=1 THEN B=A :POINTEUR=1 IF V$="" THEN C=A LIST$(A)=V$ IF POINT=8 THEN POINT=0 next i IF POINTEUR =0 THEN FILE_CLOSE 1:RETURN FILE_CLOSE 1 FILE_OPEN_WRITE 1,"C:\gestomenu\founisseur.txt" FILE_CLOSE 1 FILE_OPEN_APPEND 1,"C:\gestomenu\founisseur.txt"
FOR i=1 to C-1 IF I<B OR I>B+7 THEN FILE_WRITELN 1,list$(i) next i FILE_CLOSE 1 gosub combobo return editlist: FILE_READLN 1,v$ text 4,v$ FILE_READLN 1,v$ text 5,v$
FILE_READLN 1,v$ text 6,v$
FILE_READLN 1,v$ text 34,v$ FILE_READLN 1,v$ text 35,v$ FILE_READLN 1,v$ text 36,v$ FILE_READLN 1,v$ MARK_off 21 MARK_Off 14 MARK_Off 15 MARK_Off 16 MARK_Off 17 MARK_Off 18 MARK_Off 19 if MID$(V$, 1, 1) ="1" then mark_on 21 if MID$(V$, 2, 1) ="1" then mark_on 14 if MID$(V$, 3, 1) ="1" then mark_on 15 if MID$(V$, 4, 1) ="1" then mark_on 16 if MID$(V$, 5, 1)="1" then mark_on 17 if MID$(V$, 6, 1) ="1" then mark_on 18 if MID$(V$, 7, 1) ="1" then mark_on 19 return
Dernière édition par Jack le Ven 10 Déc 2010 - 7:57, édité 1 fois (Raison : code mis entre des balises) | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 10:02 | |
| Bonjour philou029, Et bienvenue sur le forum !!! tout d'abord pour que cela soit facile de lire ton post. pense à utiliser les balises - Code:
-
[code] ton programme [/code]
cela evite d'avoir un post qui fait 1km de long... pour ton programme : il existe un fonction qui permet de tester l'existence d'un fichier. par exemple si je la met dans ta procedure COMBOBO : - Code:
-
COMBOBO: CLEAR 3 text 4,"" text 5,"" text 6,"" text 34,"" text 35,"" text 36,"" if FILE_EXISTS("C:\gestomenu\founisseur.txt")=1 FILE_OPEN_READ 1,"C:\gestomenu\founisseur.txt" A=0 for i=1 to 1000 if a=0 then FILE_READLN 1, V$: ITEM_ADD 3,v$ FILE_READLN 1, V$
a=a+1 if a=7 then a=0 if v$="" then FILE_CLOSE 1:return next i FILE_CLOSE 1 end_if return
Je l'ai d'ailleurs employé dans ton prog en ligne 145 et 146 : - Code:
-
if FILE_EXISTS("C:\gestomenu\tartefraise.jpg")=1 then FILE_LOAD 1,"C:\gestomenu\tartefraise.jpg" if FILE_EXISTS("C:\gestomenu\region_bretagne_logo.bmp")=1 then FILE_LOAD 2,"C:\gestomenu\region_bretagne_logo.bmp"
car je n'ai pas tes 2 fichiers images... sinon, ça se présente bien ! je serai toi, mais chacun fait comme il l'entend, je mettrais des noms de variables beaucoup plus parlant, cela simplifie la lecture du prog et cela évite par la suite de faire des erreurs. par exemple : en ligne 207 au lieu d'avoir : b$=text$(4) si tu avais : Telephone$=text$(4) ...cela serait plus lisible non ? Un autre truc : je vois que plusieurs fois dans ton programme tu écris le chemin d'accès à ton fichier fournisseur. Par définition, un gars qui fait de la prog est un faignant Donc si on peut l'écrire qu'une seule fois ce n'est pas plus mal et puis si par la suite tu veux changer le nom du répertoire ou le nom du fichier, tu te prendras moins la tête... donc en début de prog tu peux déclarer: - Code:
-
DIM FichierFournisseur$ FichierFournisseur$="C:\gestomenu\fournisseur.txt"
' puis plus loin dans ton prog tu utilises la variable qui contient le nom de ton fichier .. ... ... COMBOBO: CLEAR 3 text 4,"" text 5,"" text 6,"" text 34,"" text 35,"" text 36,""
IF FILE_EXISTS(FichierFournisseur$)=1 : ' si le fichier fournisseur existe FILE_OPEN_READ 1, FichierFournisseur$ : ' ouverture du fichier WHILE FILE_EOF(1)<>1 : ' tant que l'on a pas atteint la fin du fichier FILE_READLN 1, V$: ITEM_ADD 3,V$ : ' lecture du nom FOR i=1 to 6 : FILE_READLN 1,V$ : NEXT i : ' lecture des 6 éléments suivant (qui ne nous intéresse pas) END_WHILE : 'on reboucle FILE_CLOSE 1 END_IF RETURN
| |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 17 Oct 2010 - 11:23 | |
| Salut, philou029 ! Joli programme de départ ! Je vois cependant que tu n'es pas vraiment novice en informatique. Aussi, je ne m'amuserai pas à jouer les pépés débordant de conseils. juste 2 petits points : pour à la fois confirmer et contredire ce que dit Nardo, les programmeurs sont effectivement d'une faignantise soigneusement cultivée, aussi, écrire FichierFournisseur$ à chaque fois qu'on utilise une telle variable, merci bien ! En plus, avec des majuscules ! Personnellement, je préfère ff$, c'est plus court, et si on craint les oublis, on peut toujours écrire au début du programme : dim ff$ : rem Fichier Fournisseur Le 2° point, c'est que c'est bien de fournir aux forumeurs des programmes clé en main, c'est à dire où, comme le dit Nardo, il y ait une sécurité pour les images bmp absentes, mais aussi où il n'y ait pas à créer un fichier fournisseur.txt dans le répertoire gestomenu, pour cela, c'est très simple : tu fais quelque chose comme : - Code:
-
if file_exists("C:\gestomenu\fournisseur.txt")=0 dir_make "C:\gestomenu" dir_change "C\gestomenu" file_open_write 1,"fournisseur.txt" etc... file_close 1 end_if file_open_read 1,"fournisseur.txt" etc... Comme ça, s'il existe, tu le lis sinon, il est créé et tu peux aussi le lire. Bonne programmation ! PS : dans la rubrique Présentation et Bavardage, il y a des messages de bienvenue pour les nouveaux adhérants...
Dernière édition par jjn4 le Dim 17 Oct 2010 - 13:38, édité 1 fois | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 11:43 | |
| Le nom FichierFournisseur$ est juste un exemple, pour dire que c'est plus facile à lire par la suite. Perso je tapes vite au clavier donc ça me gêne pas de mettre des majuscules/minuscule (c'est une question d'habitude) Ca me dérange pas de taper des noms à rallonge du moment que je ne les tapes qu'une seule fois. Lorsque je fais des petits bout de test, j'utilise des noms simple (a$,b,c) mais une fois au point, je fais un search&Replace pour renommer mes variables avec des noms plus explicite. cela évite de se prendre la tête 6 mois après si l'on doit se replonger dans le code. Mais comme je l'ai déjà dis, chacun fait comme il l'entend... ce ne sont juste que des conseils... si c'est mieux ff$, ben pourquoi pas ? je suis pas contrariant... | |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 17 Oct 2010 - 11:51 | |
| Ca, c'est vrai, pour 1000 programmeurs, 1000 méthodes différentes. | |
| | | philou029
Nombre de messages : 49 Age : 57 Localisation : BREST Date d'inscription : 17/10/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 13:30 | |
| je vous remercie beaucoup de vos conseils bien précieux je ne maitrise pas l'interface du forum et je ne vois pas trop comment faire pour insérer mon source dans une balise mais je pense q avec un peu de persévérance j arriverai sans trop de problème merci encore de vos précieux conseils
| |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 17 Oct 2010 - 13:36 | |
| Pour insérer ton source dans une balise, tu cliques sur l'icône code (2° icône à partir de la droite sur la première ligne) tu colles ton source, et tu cliques à nouveau sur le même icône pour fermer. | |
| | | philou029
Nombre de messages : 49 Age : 57 Localisation : BREST Date d'inscription : 17/10/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 13:44 | |
| je cherche a emmètre un son genre message d'erreur j'ai essayer mai j'arrive pas il y a t il un format spécifique a employer pour les fichiers wav merci par avance
| |
| | | jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 17 Oct 2010 - 14:02 | |
| | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 16:19 | |
| Tu peux faire cet essai : recherche dans ton répertoire windows un fichier wav et applique l'exemple de jjn4... - Code:
-
pour la balise code rien ne vaut une copie d'écran
Ca permettra de savoir si c'est ton fichier wav qui pose problème... Perso, j'utilise SUPER pour convertir/modifier les formats de mes fichiers son. tu le trouveras ici | |
| | | philou029
Nombre de messages : 49 Age : 57 Localisation : BREST Date d'inscription : 17/10/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 16:57 | |
| [/code]essaie Marra | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 17:02 | |
| pour indiquer le début : code entre les crochet [ et ] pour la fin /code entre [ et ] tu peux cliquer sur 'visualiser' lorsque tu fais tes essais. Cela evite d'envoyer... | |
| | | philou029
Nombre de messages : 49 Age : 57 Localisation : BREST Date d'inscription : 17/10/2010
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 17:05 | |
| | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: mon premier source un carnet adresse Dim 17 Oct 2010 - 20:36 | |
| Bienvenu Philou029, Un autre conseil pour raccourcir le nombre de lignes de ton programme - Code:
-
LABEL SAISIE label lecture LABEL COMBOBO label editer label modifier label suprimer label editlist DIM LIST$(1000) DIM POINTEUR DIM POINT DIM A DIM b DIM c DIM d DIM e DIM f DIM g dim i DIM A$ ,aa$,bb$,cc$ dim b$ dim v$,c$,d$,e$ DIM VERIF tu rassembles sur une ligne les DIM et LABEL et tu peux également utiliser les ":" pour séparer des fonctions - Code:
-
LABEL SAISIE,lecture,COMBOBO,editer,modifier,suprimer,editlist DIM LIST$(1000) DIM POINTEUR,POINT,A,b,c,d,e,f,g,i,A$,aa$,bb$,cc$,b$,v$,c$,d$,e$,VERIF left 0,1:top 0,1:width 0,800:height 0,600 caption 0,"AJOUTER FOURNISSEUR"
picture 1:left 1,660:top 1,10
A+ | |
| | | Contenu sponsorisé
| Sujet: Re: mon premier source un carnet adresse | |
| |
| | | | mon premier source un carnet adresse | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |