FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» PANORAMIC V 1
Retour sur SPIN Emptypar papydall Aujourd'hui à 5:28

» Je teste PANORAMIC V 1 beta 1
Retour sur SPIN Emptypar papydall Aujourd'hui à 2:48

» bouton dans autre form que 0
Retour sur SPIN Emptypar leclode Hier à 13:59

» KGF_dll - nouvelles versions
Retour sur SPIN Emptypar Klaus Hier à 11:41

» Gestion d'un système client-serveur.
Retour sur SPIN Emptypar Klaus Hier à 10:23

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Retour sur SPIN Emptypar Froggy One Jeu 2 Mai 2024 - 11:16

» @Jack
Retour sur SPIN Emptypar Jack Mar 30 Avr 2024 - 20:40

» trop de fichiers en cours
Retour sur SPIN Emptypar papydall Lun 29 Avr 2024 - 23:39

» Une calculatrice en une ligne de programme
Retour sur SPIN Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
Retour sur SPIN Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
Retour sur SPIN Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
Retour sur SPIN Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Retour sur SPIN Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Dessine-moi une galaxie
Retour sur SPIN Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Retour sur SPIN Emptypar jjn4 Lun 22 Avr 2024 - 13:43

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2024
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
2728293031  
CalendrierCalendrier
Le Deal du moment : -40%
Tefal Ingenio Emotion – Batterie de cuisine 10 ...
Voir le deal
59.99 €

 

 Retour sur SPIN

Aller en bas 
3 participants
AuteurMessage
papydall

papydall


Nombre de messages : 7004
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Retour sur SPIN Empty
MessageSujet: Retour sur SPIN   Retour sur SPIN EmptyMer 5 Sep 2012 - 18:58

La documentation de l’aide comporte plusieurs erreurs.
Par exemple la fonction TEXT$(N) qui retourne le texte visualisé par l’objet N : le manuel de référence indique que N est soit un EDIT soit un COMBO !
Or on peut l’utiliser pour un SPIN. D’ailleurs comment peut-on récupérer la valeur autrement !
Bien qu’on puisse borner les valeurs du SPIN par MIN et MAX, on peut saisir toute valeur en dehors des limites et plus bizarre on peut saisir aussi et exclusivement les 3 caractères suivant + - . (plus, moins et point).
On peut par exemple saisir une valeur comme ceci ++1-++2-.+

Le manuel de référence dit :
« Un SPIN visualise une valeur entière et fournit un MOYEN pour incrémenter ou décrémenter rapidement cette valeur »
Mais il ne dit pas quel est ce MOYEN.
Il ne dit pas aussi qu’on puisse utiliser ON_CHANGE avec SPIN, or c’est possible.
D’après mes tests, il existe 3 moyens de le faire :
1) Cliquer sur les flèches HAUT ou BAS
2) Utiliser les flèches HAUT et BAS du clavier
Dans ces 2 cas, la valeur reste bornée par MIN et par MAX et c’est parfait, sauf si MIN = MAX (et là la valeur peut être quelconque et je me demande pourquoi ?)
Mais lorsque la plage des valeurs possibles est assez étendue (entre 0 et 255 ou entre 0 et 1024), on ne va pas cliquer continuellement pour arriver à la valeur désirée ! Dans ce cas on a le 3eme moyen de le faire
3) Saisir directement, au clavier, la valeur voulue.
Et c’est là qu’il y a problème !

Le système ne permet pas de saisir les caractères alphabétiques et c’est tout à fait correct et bien.
Il permet de saisir les caractères numériques (de 0 à 9) et c’est correct encore.

Mais il ne permet pas de ne pas dépasser les bornes définies par MIN et par MAX.
Pire il permet aussi de saisir 3 autres caractères (+ - . plus, moins et point) et là ce n’est pas correct.
Pour les caractères (+ ou -) ça peut y aller à condition qu’il soit en début et seulement en début de la saisie tandis que le caractère (.) ne doit pas être accepté puisque la valeur doit OBLIGATOIREMENT être entière ; autrement dit, elle doit avoir un successeur et un prédécesseur ce qui n’est pas le cas pour une valeur réelle.

Dans un SPIN, le système accepte une saisie comme ceci : +-123++5..
Ce qui déclenchera une erreur lorsqu’on veut récupérer la valeur dans une variable.

Pour ceux qui diront : tu n’as qu’à être logique ou rationnel ou responsable de ta saisie et qu’on ne saisit pas une valeur de cette manière etc.
Je répondrais ainsi :
Puisque le système peut reconnaitre les caractères interdits (lettres et autres symboles tels que !, ?£ : etc.) et ne les accepte pas, il pourrait également ne pas accepter une saisie comme ++++…----1230.

Le programmeur peut éviter ces erreurs en faisant les tests nécessaires dans son code et c’est son devoir mais ça rallongerait beaucoup le code
Il doit tester si la variable dans laquelle il a récupéré la valeur est NUMERIC puis si on n’a pas dépassé MAX puis si on n’a pas saisit une valeur inferieure à MIN. Si dans le programme, il y a plusieurs SPIN, la tâche risque d’être lourde.

Pour ma part, je peux me passer sans regret de ce SPIN et d’utiliser une autre démarche pour un résultat plus élégant.
A moins que Jack apporterait une amélioration à ce SPIN.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Retour sur SPIN Empty
MessageSujet: Re: Retour sur SPIN   Retour sur SPIN EmptyMer 5 Sep 2012 - 19:37

Très bonne critique constructive. Je trouve que le spin est un outils puissant personnellement et bien pratique, mais c'est vrai que la documentation est a améliorer, les exemples à enrichir...
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 53
Localisation : Bretagne
Date d'inscription : 15/02/2010

Retour sur SPIN Empty
MessageSujet: re   Retour sur SPIN EmptyMer 5 Sep 2012 - 19:47

Perso, je verrai bien la partie "edit" grisé et que celui ci soit géré
par "Position N,P" - "Position(N)" - "Min N,%" - "Max N,%" - " et augmenté ou diminué par ses flèches
Un peu comme une "scroll_bar" qui afficherait sa valeur au lieu d'un avancement sur une bar.
Revenir en haut Aller en bas
Invité
Invité




Retour sur SPIN Empty
MessageSujet: Re: Retour sur SPIN   Retour sur SPIN EmptyJeu 6 Sep 2012 - 0:26

Si vous ne voulez pas vous "emmerder" avec un spin, essayez ceci. Evidemment pour remplir et se servir d'une grandeur de 10000, il vaut mieux laisser tomber.
Code:

dim a%  : label verif

list 1:width 1,60 :font_size 1,12 :height 1,25 :on_click 1,verif
for a%=10 to 20:item_add 1,a%:next a%
end
verif:
  message item_index$(1)
return
Revenir en haut Aller en bas
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Retour sur SPIN Empty
MessageSujet: Re: Retour sur SPIN   Retour sur SPIN EmptyJeu 6 Sep 2012 - 0:49

En effet, remplacement très malin Wink
Revenir en haut Aller en bas
papydall

papydall


Nombre de messages : 7004
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Retour sur SPIN Empty
MessageSujet: Re: Retour sur SPIN   Retour sur SPIN EmptyJeu 6 Sep 2012 - 1:08

Merci cosmos 70.

Et pour récupérer la valeur dans une variable, on fait ceci, n'est-ce pas ?
Code:

dim a%,v  : label verif

list 1:width 1,60 :font_size 1,12 :height 1,25 :on_click 1,verif
for a%=0 to 255:item_add 1,a%:next a%

end
verif:
  v = val(item_index$(1))
  message v
return

Et pour aller plus vite, on fait ceci (si le contexte du programme le permet)

Code:

dim a%,v  : label verif

list 1:width 1,60 :font_size 1,12 :height 1,400 :on_click 1,verif
for a%=0 to 255:item_add 1,a%:next a%

end
verif:
  v = val(item_index$(1))
  message v
return
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Invité
Invité




Retour sur SPIN Empty
MessageSujet: Re: Retour sur SPIN   Retour sur SPIN EmptyJeu 6 Sep 2012 - 6:44

Dans ton dernier exemple, cela ne montre non pas une simulation d'un objet SPIN, mais celui d'un list. A partir de là je proposerais un combo.

Il y a une chose qui ne me plais pas avec combo, car le remplacement d'un spin a un défaut. Si on se sert d'un même combo pour plusieurs objets, on n'a pas la possibilité d'imposer la valeur à voir dans la partie edit du combo.
D'ailleurs je me demande, à quel moment celui-ci est mise à jour par Panoramic. Qu'est-ce qui fait que le texte est modifié, vu que celui imposé est bien placé dans l'edit pendant un moment. Jack peux-tu me répondre là dessus.
J'en ai parlé dans un temps bien lointain. Personnellement pour moi, il y a un bug.
Code:

dim a%  : label verif

combo 1:width 1,60 :font_size 1,12 :height 1,25 :on_click 1,verif
for a%=10 to 20:item_add 1,a%:next a%
end
verif:
  message item_index$(1)
  clear 1 :' je fais l'essai de tout vider pour voir
  text 1,10
  for a% = 10 to 20:item_add 1,a%:next a%
  text 1,10:stop
return
La seul possibilité est de mettre un 2ème edit par dessus celui du combo pour afficher ce qu'on veut, et d'y mettre un on_change sur cet edit. Mais à partir de là il faut mieux travailler avec SPIN.

Je vous laisse dans vos réflexion. Je vais voir ailleur si j'y suis, dès fois que je me retrouve geek
Revenir en haut Aller en bas
Contenu sponsorisé





Retour sur SPIN Empty
MessageSujet: Re: Retour sur SPIN   Retour sur SPIN Empty

Revenir en haut Aller en bas
 
Retour sur SPIN
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» SPIN
» SPIN
» min et max de SPIN
» Color sur spin
» Détournement de SPIN . . .

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Présentation et bavardage-
Sauter vers: