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 |
|
|
| fonction grid | |
| | |
Auteur | Message |
---|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 20:30 | |
| Mdr N'empèche que ça permet aussi de penser au blindage de la fonction pour si on la réutilise. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Mai 2013 - 20:44 | |
| En fait, je pensais à une procédure " ProtectPapydallVirus() " Qu' en penses tu ? | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 20:58 | |
| Ca me semble correct et à implémenter dans tous les sources | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Mai 2013 - 21:01 | |
| Surtout, ne pas oublier d' inclure un correcteur orthographiques et grammatical à cette procédure... | |
| | | mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 22:06 | |
| au secour vous allez trop vite merci mindstorm | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Mai 2013 - 22:25 | |
| @ Mindstorm, Sur la page 1, le dernier post de ma part avec un code. Tiens, je le remets ici : - Code:
-
Dim e%,a%,gl%(100),gc%(100) label Haut,Bas,Gauche,Droite,Alea
Create_damier() Boutons() ' entrez la case de départ du point en paramètre (1 à 100) Init_point(1) ActiveButton() end
Sub Create_damier() Dim_Local x%,y%,z%,Tp%,Lig%,Col%,T%,L% Lig%=10 :Col%=10:T%=25:L%=25 for x%=1 to 10 L%=L%+25 Tp%=T%+25 for y%=1 to 10 z%=z%+1 gc%(z%)=x% :gl%(z%)=y% Tp%=Tp%+25 Edit z% :top z%,Tp% :left z%,L% :height z%,20: width z%,20:text z%,"n" font_name z%,"Webdings" color z%,200,250,250:font_color z%,200,250,250 next y% next x% End_Sub
Sub Boutons() alpha 999: top 999,270 : left 999,380 caption 999,"Déplacer le point":font_name 999,"arial" ' bouton haut Button 1000 :top 1000,300 :left 1000,400 :height 1000,21 : width 1000,21 caption 1000,"5":font_name 1000,"Webdings" :font_size 1000,12 on_click 1000,Haut:cursor_point 1000 hint 1000,"Déplacemant vers le haut" ' bouton gauche button 1001 :top 1001,325 :left 1001,375 :height 1001,21 : width 1001,21 caption 1001,"3":font_name 1001,"Webdings" :font_size 1001,12 on_click 1001,Gauche :cursor_point 1001 hint 1001,"Déplacement vers la gauche" ' bouton droite button 1002 :top 1002,325 :left 1002,425 :height 1002,21 : width 1002,21 caption 1002,"4":font_name 1002,"Webdings" :font_size 1002,12 on_click 1002,Droite :cursor_point 1002 hint 1002,"Déplacement vers la droite" ' bouton bas button 1003 :top 1003,350 :left 1003,400 :height 1003,21 : width 1003,21 caption 1003,"6":font_name 1003,"Webdings" :font_size 1003,12 on_click 1003,Bas :cursor_point 1003 hint 1003,"Déplacement vers le bas" ' bouton aléatoire button 1004 :top 1004,325 :left 1004,400 :height 1004,21 : width 1004,21 caption 1004,"A":font_name 1004,"arial" :font_Bold 1004 on_click 1004,Alea :cursor_point 1004 hint 1004,"Déplacement Aléatoire"
End_Sub
Sub Init_Point(P%) e%=P% Font_color P%,0,0,255 End_Sub
Haut: e%=e%-1 font_color e%+1,200,250,250 font_color e%,0,0,255 caption 0,"Case actuelle : "+str$(e%) ActiveButton() return
Bas: e%=e%+1 font_color e%-1,200,250,250 font_color e%,0,0,255 caption 0,"Case actuelle : "+str$(e%) ActiveButton() return
Gauche: e%=e%-10 font_color e%+10,200,250,250 font_color e%,0,0,255 caption 0,"Case actuelle : "+str$(e%) ActiveButton() return
Droite: e%=e%+10 font_color e%-10,200,250,250 font_color e%,0,0,255 caption 0,"Case actuelle : "+str$(e%) ActiveButton() return
Alea: a%=int(rnd(100))+1 Deplacement_Alea(a%) return
Sub ActiveButton() Dim_Local b%,h1%,b1%,g1%,d1% h1%=0:b1%=0:g1%=0:d1%=0 ' haut for b%=1 to 91 step 10 if e%=b% :h1%=1 :exit_for:end_if next b% if h1%=1:inactive 1000:else: active 1000:end_if ' bas for b%=10 to 100 step 10 if e%=b% :b1%=1 :exit_for:end_if next b% if b1%=1:inactive 1003:else: active 1003:end_if ' gauche for b%=1 to 10 if e%=b% :g1%=1 :exit_for:end_if next b% if g1%=1:inactive 1001:else: active 1001:end_if ' droite for b%=91 to 100 if e%=b% :d1%=1 :exit_for:end_if next b% if d1%=1:inactive 1002:else: active 1002:end_if End_Sub
Sub Deplacement_Alea(tir%) Dim_local x%,y%,i% Dim_local x1%,y1% Dim_local z%,w% Dim_local x2%,y2%
' ligne PapydallProtect for i%=1000 to 1004 : inactive i%:next i%
x%=gc%(tir%) y%=gl%(tir%) x1%=gc%(e%) y1%=gl%(e%)
caption 0,"case ( "+str$(x1%)+" ; "+str$(y1%)+" ) va en case ( "+str$(x%)+" ; "+str$(y%)+" )"
if x%>x1% x2%=x%-x1% for w%=1 to x2% e%=e%+10 font_color e%-10,200,250,250 font_color e%,0,0,255 wait 500 next w% else x2%=x1%-x% for w%=x2% to 1 step -1 e%=e%-10 font_color e%+10,200,250,250 font_color e%,0,0,255 wait 500 next w% end_if
if y%>y1% y2%=y%-y1% for z%=1 to y2% e%=e%+1 font_color e%-1,200,250,250 font_color e%,0,0,255 wait 500 next z% else y2%=y1%-y% for z%=y2% to 1 step -1 e%=e%-1 font_color e%+1,200,250,250 font_color e%,0,0,255 wait 500 next z% end_if ' levée de la protection for i%=1000 to 1004 : active i% :next i% ' verif des boutons cliquables ActiveButton() ' ligne papydallview caption 0,"Case actuelle : "+str$(e%) End_Sub | |
| | | mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 22:30 | |
| bonsoir a tous @ gigi j'ai vue merci mais j'insiste pense pour le robot par avance lui !!! execute!!! et même sur mars il faut des pilotes (pour l'instant)
@ tous est il possible de faire la même chose dans un monde 3D je souhaite faire un tas de sable a creuser RIEN QUE CELA!! rien que cela! merci Mindstorm | |
| | | mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 22:33 | |
| @ ygeronimi comment fais tu pour corriger un code dans un poste deja envoyé un page avant ? merci Mindstorm | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 22:44 | |
| - mindstorm a écrit:
- @ ygeronimi
comment fais tu pour corriger un code dans un poste deja envoyé un page avant ? merci Mindstorm Je me permets de répondre à la place de Ygeronimi. Voilà, c’est simple : d’abord, tu ne peux modifier/corriger que ton message pas ceux des autres ! Tu vois à droite de ton message un bouton editer à côté du bouton citer? Clique sur editer. ça te ramène à ton message : là tu peux le modifier puis le renvoyer à nouveau. capito ?
Dernière édition par papydall le Lun 13 Mai 2013 - 23:23, édité 1 fois | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 23:10 | |
| J’ai testé le programme à nouveau (surtout ne dites pas retester : ça n’existe pas !!!) : hé bien c’est presque parfait, voici une note d’encouragement : Bon, on a bien rigolé et c’est bien sain ! La morale de l’histoire : il faut toujours veiller à ce qu’un programme doive fonctionner correctement quelque soit le comportement de l’utilisateur ! Quand on écrit un programme non destiné à soi-même, il faut penser à toutes les éventualités (si l’on peut) et empêcher que l’utilisateur ne prenne la liberté de diriger le programme vers le non-sens. Il ne faut pas se contenter de croire que l’utilisateur est rationnel ! Moi-même je ne le suis pas toujours ! Ne vous en êtes pas rendu compte ?!
Dernière édition par papydall le Mar 14 Mai 2013 - 11:22, édité 2 fois | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 13 Mai 2013 - 23:24 | |
| Je crois que tu as tout dit... | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: fonction grid Lun 13 Mai 2013 - 23:27 | |
| Tu as bien fais de croire ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 14 Mai 2013 - 0:00 | |
| Et ,ce , sans rien avoir vu ! | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 11:21 | |
| Croire sans avoir rien vu : bizarre , non ? | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 15:07 | |
| Bon et pour revenir à notre grille pas d'autres idées pour la développer (genre fonction de mise en forme d'une cellule, d'une ligne, d'une colonne) Mise à jour du contenu par ligne, colonne ... Pour te donner envie de modifier, je t'ai modifié un peu ton source pour faciliter sa réutilisation (enfin je pense, mais il peut sans doute être encore rendu plus clair, ce n'est qu'une proposition ...) - Code:
-
Dim e%,a% Dim NbLignes%,NBColonnes% : NbLignes%=15 : NBColonnes% = 5 Dim N_ObjGrille% : N_ObjGrille% = 5
Label Haut,Bas,Gauche,Droite,Alea
Create_damier(N_ObjGrille%,NbLignes%,NBColonnes%,30,20,5,5) Boutons()
' entrez la case de départ du point en paramètre (1 à 100) Init_point(N_ObjGrille%,1)
ActiveButton(NbLignes%,NBColonnes%)
end
Sub Create_damier(NObj%,Lig%,Col%,T%,L%,EH%,EV%) Dim_Local x%,y%,z%,Tp%,Lp%
z%=NObj% :TP%= EV% for x%=1 to Lig% Lp% = EH% for y%=1 to Col% Edit z% :top z%,Tp% :left z%,Lp% :height z%,L%: width z%,T%:text z%,"n" font_name z%,"Webdings": color z%,200,250,250:font_color z%,200,250,250 z%=z%+1 Lp%=Lp%+T%+EH% next y% Tp% = TP% + EV% +L% next x% End_Sub
Sub Boutons() alpha 999: top 999,270 : left 999,380 : caption 999,"Déplacer le point" font_name 999,"arial" ' bouton haut Button 1000 :top 1000,300 :left 1000,400 :height 1000,21 : width 1000,21 caption 1000,"5":font_name 1000,"Webdings" :font_size 1000,12 on_click 1000,Haut:cursor_point 1000 : hint 1000,"Déplacemant vers le haut" ' bouton gauche button 1001 :top 1001,325 :left 1001,375 :height 1001,21 : width 1001,21 caption 1001,"3":font_name 1001,"Webdings" :font_size 1001,12 on_click 1001,Gauche :cursor_point 1001 : hint 1001,"Déplacement vers la gauche" ' bouton droite button 1002 :top 1002,325 :left 1002,425 :height 1002,21 : width 1002,21 caption 1002,"4":font_name 1002,"Webdings" :font_size 1002,12 on_click 1002,Droite :cursor_point 1002 : hint 1002,"Déplacement vers la droite" ' bouton bas button 1003 :top 1003,350 :left 1003,400 :height 1003,21 : width 1003,21 caption 1003,"6":font_name 1003,"Webdings" :font_size 1003,12 on_click 1003,Bas :cursor_point 1003 : hint 1003,"Déplacement vers le bas" ' bouton aléatoire button 1004 :top 1004,325 :left 1004,400 :height 1004,21 : width 1004,21 caption 1004,"A":font_name 1004,"arial" :font_Bold 1004 on_click 1004,Alea :cursor_point 1004: hint 1004,"Déplacement Aléatoire" End_Sub
Sub Init_Point(NObj%,P%) e%=P% : Depl(N_ObjGrille%,0,0,NbLignes%,NBColonnes%) End_Sub
SUB Depl(NObj%,C%,L%,NLig%,NCol%) font_color e% + NObj% -1,200,250,250 e%=e%+C%+L%*NCol% font_color e%+ NObj% -1,0,0,255 caption 0,"Case actuelle : "+str$(e%) ActiveButton(NbLignes%,NBColonnes%) END_SUB
Haut: Depl(N_ObjGrille%,0,-1,NbLignes%,NBColonnes%) return
Bas: Depl(N_ObjGrille%,0,1,NbLignes%,NBColonnes%) return
Gauche: Depl(N_ObjGrille%,-1,0,NbLignes%,NBColonnes%) return
Droite: Depl(N_ObjGrille%,1,0,NbLignes%,NBColonnes%) return
Alea: a%=int(rnd(NbLignes%*NBColonnes%))+1 Deplacement_Alea(a%,N_ObjGrille%,NbLignes%,NBColonnes%) return
Sub ActiveButton(NL%,NC%) Dim_Local b%,g1%,d1% g1%=0:d1%=0
' haut if e% <= NC% inactive 1000 else active 1000 end_if
' bas if e% > (NL% - 1)*NC% inactive 1003 else active 1003 end_if
' gauche for b%=1 to (NL% - 1)*NC% + 1 step NC% if e%=b% :g1%=1 :exit_for:end_if next b%
if g1%=1 inactive 1001 else active 1001 end_if
' droite for b%=NC% to NL% * NC% step NC% if e%=b% :d1%=1 :exit_for:end_if next b% if d1%=1 inactive 1002 else active 1002 end_if End_Sub
Sub Deplacement_Alea(tir%,NO%,NL%,NC%) Dim_local x%,y%,i% Dim_local x1%,y1% Dim_local z%,w% Dim_local x2%,y2%
' ligne PapydallProtect for i%=1000 to 1004 : inactive i%:next i%
if mod(tir%,NC%) = 0 x%= NC% y%= tir%/NC% else x% = mod(tir%,NC%) y% = int(tir%/NC%) +1 end_if if mod(e%,NC%) = 0 x1%= NC% y1%= e%/NC% else x1% = mod(e%,NC%) y1% = int(e%/NC%) +1 end_if
caption 0,"case ( "+str$(x1%)+" ; "+str$(y1%)+" ) va en case ( "+str$(x%)+" ; "+str$(y%)+" )" wait 2000 if x%>x1% x2%=x%-x1% for w%=1 to x2% Depl(N_ObjGrille%,1,0,NbLignes%,NBColonnes%) wait 500 next w% else x2%=x1%-x% for w%=x2% to 1 step -1 Depl(N_ObjGrille%,-1,0,NbLignes%,NBColonnes%) wait 500 next w% end_if
if y%>y1% y2%=y%-y1% for z%=1 to y2% Depl(N_ObjGrille%,0,1,NbLignes%,NBColonnes%) wait 500 next z% else y2%=y1%-y% for z%=y2% to 1 step -1 Depl(N_ObjGrille%,0,-1,NbLignes%,NBColonnes%) wait 500 next z% end_if ' levée de la protection for i%=1000 to 1004 : active i% :next i% ' verif des boutons cliquables ActiveButton(NbLignes%,NBColonnes%) End_Sub
Bon, je retourne bosé, j'ai pris une heure sur le boulot là ... j'abuse ... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mar 14 Mai 2013 - 18:38 | |
| @ Jicehel, Au départ, ce code était juste destiné à montrer les possibilités d'un tableau de "Edit" et a fini par partir en délire... Bref, maintenant, si tu veux simplifier mes codes, j'en ai un qui est pas cochon... Je bosse sur une nouvelle mouture de " Mon Ecurie" plus détaillée et plus complète. Actuellement je suis sur l'interface et cela représente déjà quelques dizaines de lignes. Et encore, grâce aux procédures d'objet que je me suis faite . Ceci dit, j' ai encore beaucoup de mal avec la numérotation des objets que vous semblez avoir adopté. Trop de variables à déclarer à mon goût. Sur un projet comme celui que j' essaye d'améliorer, cela donnerait une page A4 de déclarations de variables... En plus, il faut se creuser la tête pour ne pas faire de doublons. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 18:58 | |
| - Jicehel a écrit:
- Bon, je retourne bosé, j'ai pris une heure sur le boulot là ... j'abuse ...
Quand Jicehel retourne bosé, on ne prévoit pas ni quoi il en sort ni de quoi il abuse! Hmmm .... à méditer ! | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 20:20 | |
| Et finalement, on ne sait pas de quoi il retourne ! (et il vaut mieux, sans doute). | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 20:42 | |
| - Ygeronimi a écrit:
- Ceci dit, j' ai encore beaucoup de mal avec la numérotation des objets que vous semblez avoir
adopté. Trop de variables à déclarer à mon goût. Sur un projet comme celui que j' essaye d'améliorer, cela donnerait une page A4 de déclarations de variables... En plus, il faut se creuser la tête pour ne pas faire de doublons. Franchement je préfère me creuser la tête pour ne pas faire de doublons que de me demander en cours de codage quel numéro a l'objet dont j'ai besoin. De toutes façons, si tu fais un doublon, Panoramic te rappelle à l'ordre. quand au pages de déclaration de variables c'est une variable par objet et les PC d'aujourd'hui ne sont pas a un Mo prêt de mémoire. Creuse le le sujet et tu verras que c'est hyper confortable pour coder. A+ | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: RE Mar 14 Mai 2013 - 20:55 | |
| @Jean Claude, Je ne mets pas doute l' aspect pratique mais pour l' heure... ...je n' arrive pas à m' y faire... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 21:22 | |
| C'est bien pour çà que je te dis creuses le sujet et tu verras les avantages... Mais je ne prétends pas détenir la vérité.... A+ | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: fonction grid Mar 14 Mai 2013 - 22:02 | |
| ou alors tu fais un tableau de variables (Heu non, ne le fait pas, c'est une blague ..... ) | |
| | | Contenu sponsorisé
| Sujet: Re: fonction grid | |
| |
| | | | fonction grid | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |