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 |
|
|
| astuce pour détourner provisoirement un programme | |
| | Auteur | Message |
---|
Invité Invité
| Sujet: astuce pour détourner provisoirement un programme Jeu 14 Oct 2010 - 19:26 | |
| Plus d'une fois on s'est trouvé devant le problème de saisie pendant le cours d'un programme. Pour arrêter un code, c'était un problème. Heureusement Jack a codé les message_input qui permet la saisie. Le problème est que parfois, on préférerait une autre possibilité, ce qui est le cas pour le programme que je suis en train de faire. J'avais déjà trouvé une possibilité dans une procédure de faire la chose en deux temps, avec une variable, du genre: il passage = 0 ' affiche une boite de saisie else ' récupération de la saisie end_if return Et là aujourd'hui, je me suis traité de con en trouvant cette astuce. J'en profite pour essayer un programme qui n'est pas fini, (encore une bonne semaine) Lorsque l'on veut arréter un programme, il suffit de mettre end, de traité l'information, et de se rebrancher à une étiquette à la suite, pour continuer le programme. Cela marche même dans une boucle, mais peut-être sera t-il nécessaire de rendre inactif les autres objets! - Code:
-
dim a$ ,a%, patati_patata label suite , clic edit 10:hide 10:width 10,200:height 10,30:font_size 10,12:color 10,255,255,0 on_click 0,suite end suite: for a%=1 to 10 if patati_patata = 0 show 10:' si possible mettre inactif le reste des objets on_click 10,clic : set_focus 10 END clic: hide 10 a$=text$(10):message a$ patati_patata = 1 end_if next a% message "a%="+str$(a%) return J'en profite pour demander, vu qu'il y a des matheux sur ce forum (à voir ce qui s'est dit sur PI ), Y a t-il une formule pour avoir un arrondi sur un entier, je veux dire (à 1 ou 2 unité près), en évitant if > x+1 and < x-1. Ce que je cherche est une formule en basic.
Je viens de réagir, le programme que je fais n'est pas un éditeur basic, j'ai pas fait gaffe à cela |
| | | Georges
Nombre de messages : 290 Age : 55 Localisation : Martinique Date d'inscription : 29/05/2009
| Sujet: re Jeu 14 Oct 2010 - 20:42 | |
| salut
moi j'utilise ce type de formule pour les arrondis
int (v*100)/100 pour deux chiffres après la virgule
int (v*10)/10 pour un chiffre après la virgule ainsi de suite
pour des intervalles style dichotomie
(int(v)-1) et (int(v)+1)
si j'ai bien compris ce que tu cherche
@+
| |
| | | Invité Invité
| Sujet: Re: astuce pour détourner provisoirement un programme Jeu 14 Oct 2010 - 22:48 | |
| Bonsoir Georges, content de te retrouver. Pour les nombres décimaux, j'ai la formule, mais pour des entiers. exemple: si 128=130 (je sais c'est faux), mais je veux avoir une tolérance sur les pixels. en cliquant sur un point, celui d'à côté serait aussi bon. Il est difficile de stabiliser la souris sur un point, et je veux pouvoir avoir un cercle à 1 ou 2 pixels près sur le clic. Sur mon programme qui est un picture, j'ai réussi après avoir rempli à différents endroits de la surface écrit du texte, de retrouver celui-ci et le caractère qui est sous le clic, de reconnaître la zone cliquée, et changer ou le texte, ou les couleurs. Le seul problème, est que si je veux juste cliquer un point pour trouver une ligne, la souris n'est pas facile à ne lire qu'un seul pixel, sinon je serais obligé de faire deux commandes: une pour choisir une ligne, et une autre pour choisir une zone.
Je ne sais pas si vous avez fait l'essai, mais une condition avec plusieurs and, est difficile en Panoramic à faire. Dans les autres basic, l'acceptation de plusieurs and ne pose pas de problème, alors que maintenant j'ai énormément de mal à faire une condition qui ne trouve pas une erreur, même en mettant des parenthèses.
Merci |
| | | Invité Invité
| Sujet: Re: astuce pour détourner provisoirement un programme Jeu 14 Oct 2010 - 23:13 | |
| Si vous avez une réponse, donnez-là, elle peut servir. J'ai trouvé une méthode qui me parait meilleur. Lorsque j'ai relâché le bouton, une liste apparaît à côté du curseur, et je peux faire le choix, et en rajouter, comme annuler la commande, supprimer tel truc, etc... Merci |
| | | Invité Invité
| Sujet: Re: astuce pour détourner provisoirement un programme Ven 15 Oct 2010 - 0:16 | |
| - Citation :
- pour des intervalles style dichotomie
cela veut dire quoi? C'est pour des nombres entiers?. Je ne vois pas de décimal. Merci |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: astuce pour détourner provisoirement un programme Ven 15 Oct 2010 - 0:23 | |
| Bonsoir cosmos, concernant la tolérance de positionnement de la souris, je ne vois pas d'autre méthode que les classiques x>x0-n and x<(x0+n)... et on peut très bien enchaîner les AND: (Clic droit pour sortir): - Code:
-
DIM x, y, x0, y0, n, delta LABEL toto ' ========================== CLIC DROIT POUR SORTIR ! ======================== x0 = 100: y0 = 50 delta = 20: ' tolérance de part et d'autre du point visé (soit 40 pixels au total) 2D_RECTANGLE x0-delta, y0-delta, x0+delta, y0+delta 2D_LINE x0-delta,y0,x0+delta,y0: 2D_LINE x0,y0-delta,x0,y0+delta toto: IF MOUSE_RIGHT_DOWN(0) = 1 THEN TERMINATE IF MOUSE_LEFT_DOWN(0) = 1 x = MOUSE_X_POSITION(n) y = MOUSE_Y_POSITION(n) IF (x>(x0-delta)) AND (x<(x0+delta)) AND (y>(y0-delta)) AND (y<(y0+delta)) PRINT "Dedans" ELSE PRINT "Dehors" END_IF END_IF WAIT 100 GOTO toto END PS dans la ligne: - Code:
-
IF (x>(x0-delta)) AND (x<(x0+delta)) AND (y>(y0-delta)) AND (y<(y0+delta)) les parenthèses ne sont pas nécessaires, on peut écrire: - Code:
-
IF x>(x0-delta) AND x<(x0+delta) AND y>(y0-delta) AND y<(y0+delta) | |
| | | Invité Invité
| Sujet: Re: astuce pour détourner provisoirement un programme Ven 15 Oct 2010 - 1:33 | |
| Merci, tu es plus efficace que moi pour les testes. Le (vieux) au dodo! |
| | | Contenu sponsorisé
| Sujet: Re: astuce pour détourner provisoirement un programme | |
| |
| | | | astuce pour détourner provisoirement un programme | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |