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
» item_index(résolu)
clicked(n) problème Emptypar leclode Aujourd'hui à 15:51

» Gestion d'un système client-serveur.
clicked(n) problème Emptypar Klaus Hier à 17:01

» Bataille terrestre
clicked(n) problème Emptypar jjn4 Hier à 15:01

» SineCube
clicked(n) problème Emptypar Marc Sam 11 Mai 2024 - 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
clicked(n) problème Emptypar Marc Sam 11 Mai 2024 - 12:22

» Philharmusique
clicked(n) problème Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
clicked(n) problème Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
clicked(n) problème Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
clicked(n) problème Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
clicked(n) problème Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
clicked(n) problème Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
clicked(n) problème Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0(résolu)
clicked(n) problème Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
clicked(n) problème Emptypar Klaus Lun 6 Mai 2024 - 11:41

» @Jack
clicked(n) problème Emptypar Jack Mar 30 Avr 2024 - 20:40

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 :
Réassort du coffret Pokémon 151 ...
Voir le deal

 

 clicked(n) problème

Aller en bas 
5 participants
Aller à la page : 1, 2  Suivant
AuteurMessage
bignono

bignono


Nombre de messages : 1127
Age : 66
Localisation : Val de Marne
Date d'inscription : 13/11/2011

clicked(n) problème Empty
MessageSujet: clicked(n) problème   clicked(n) problème EmptyJeu 2 Avr 2015 - 23:19

Bonjour à tous,
Je crois avoir trouvé un bug avec la fonction clicked(n).
Dans un de mes programmes, j’utilise plusieurs boucles while end_while se suivant avec la condition clicked(n) et seule la première boucle est exécutée, les autres étant ignorées.
J’ai essayé le petit programme test suivant sur plusieurs versions de panoramic et le problème ne se produit qu’à partir des versions 0.9.26... La fonction clicked(1) reste à 1 définitivement et ne se remet pas à 0 dès qu’on a cliqué une fois sur le bouton.
Sur les versions antérieures aux 0.9.26, il n’y a pas de problèmes, les boucles sont bien exécutées les unes après les autres et la fonction clicked(1) est bien remise à 0 après le clic sur le bouton.
J’en déduis donc un bug. A Jack de confirmer.
Code:
' la seconde boucle while end_while n'est jamais exécutée
button 1:caption 1,"Cliquez-moi !"
memo 2:left 2,100
while clicked(1)=0
   item_add 2,date$+" il est "+time$
end_while

' print_target_is 2:print clicked(1):end

while clicked(1)=0
   item_add 2,time$+" nous sommes le "+date$
end_while
Revenir en haut Aller en bas
papydall

papydall


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

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 0:54

Salut Bignono

Je ne penche pas pour le bug.
A mon avis, la seconde boucle WHILE ne doit pas être exécutée et c’est bien ce qui est fait.
Le contraire serait un bug.
En effet, la 1ère boucle WHILE s’exécute tant que le bouton n’est pas cliqué. La fonction CLICKED(1) doit valoir 0.
Si on clique sur le bouton, on sort de la boucle et la fonction CLICKED(1) vaut 1
La condition de la seconde boucle WHILE est dès le départ fausse  (puisqu’elle vaut 1 et non 0), la boucle est purement et simplement ignorée.

Essaie ceci

Code:
button 1:caption 1,"Cliquez-moi !"
memo 2:left 2,100
button 3 : left 3,400 : caption 3,"Click-me"
while clicked(1)=0
   item_add 2,date$+" il est "+time$
end_while

while clicked(3)=0
   font_color 2,0,0,255
   item_add 2,time$+" nous sommes le "+date$
end_while

PS
La structure du code que tu as fourni est une structure séquentielle.
Le code se déroule sans se soucier de la venue ou non d’un quelconque événement tel un click ou autre.
Son fonctionnement est correct.

Mais si on veut gérer efficacement les clicks, il est nécessaire d’opter pour la programmation événementielle, avec les ON_CLICK …

C'est ma manière à moi de voir les choses Laughing
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
bignono

bignono


Nombre de messages : 1127
Age : 66
Localisation : Val de Marne
Date d'inscription : 13/11/2011

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 7:30

Bonjour Papydall,
Je ne suis pas d'accord avec toi!
Dans ton exemple si tu cliques d'abord sur le bouton 3 "click-me" alors que la première boucle se déroule en attendant que l'on clique sur l'autre bouton (le 1 "cliquez-moi !"), il ne se passe rien... Enfin si, une fois que l'on clique sur le premier bouton, le programme s'arrête et la seconde boucle n'est jamais exécutée! Alors que la condition pour passer à la suite du programme c'est de cliquer sur le premier bouton!
La fonction clicked te renvoie soit 0 pour dire que rien n'a été cliqué, soit 1 pour dire que l'on a cliqué un objet. Si l'objet a été cliqué, la suite du programme s'exécute et la fonction doit repasser à 0 et non pas rester bloquée à 1, puisque l'objet n'est plus cliqué à ce moment là.
Revenir en haut Aller en bas
Invité
Invité




clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 8:49

Tant pis je répond, cela ne me parrait pas très clair.
Le programme ne me parrait pas très clair, mais c'est juste pour montrer un problème.

Je rejoins l'avis de Bignono car effectivement clicked(1) reste bloqué à 1
Code:
' la seconde boucle while end_while n'est jamais exécutée
button 1:caption 1,"Cliquez-moi !"
memo 2:left 2,100

while clicked(1)=0
   item_add 2,date$+" il est "+time$
end_while

message clicked(1)
message clicked(1)
message clicked(1)

' print_target_is 2:print clicked(1):end

while clicked(1)=0
   item_add 2,time$+" nous sommes le "+date$
end_while

message "fin"
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 8:51

Heu ! pas évident comme problème.

Une chose est certaine: le comportement du programme de Bignono n'est pas le même entre les 2 versions de Panoramic. C'est donc "un bug", mais dans quelle version ???

A+
Revenir en haut Aller en bas
Invité
Invité




clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 10:00

Voici une version qui montre bien un bug:
Code:
label clic

button 1:caption 1,"bouton 1" : on_click 1,clic
button 2:caption 2,"bouton 2" : on_click 2,clic : top 2,30

END
clic:
  if clicked(1) = 1 then message "1"
  if clicked(2) = 1 then message "2"
return
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 11:46

En suivant ton code Cosmos, je me suis dit qu'il fallait "décliquer" le bouton après le message pour le remettre à zéro. Mais écrire [if clicked(1) = 1 then clicked(1) = 0] n'est pas valide.
Alors j'ai tenté ceci
Code:
label clic

button 1:caption 1,"bouton 1" : on_click 1,clic
button 2:caption 2,"bouton 2" : on_click 2,clic : top 2,30

END
clic:
  message "Bouton n°1="+str$(clicked(1))+" / Bouton n°2="+str$(clicked(2))
  off_click number_click
  if clicked(1) = 1 then on_click 1,clic
  if clicked(2) = 1 then on_click 2,clic
return

On s'aperçoit que OFF_CLICK N joue son rôle, mais ne change pas la valeur de CLICKED(N)

Il y a bien un problème.

A+
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 11:55

Autre chose:

Essayez ce code avec la V09.25 et la V09.26

Code:
label clic

button 1:caption 1,"bouton 1" : on_click 1,clic
button 2:caption 2,"bouton 2" : on_click 2,clic : top 2,30

END
clic:
  message "Bouton n°1="+str$(clicked(1))+" / Bouton n°2="+str$(clicked(2))
  if clicked(1) = 1 then clicked(1) = 0
  if clicked(2) = 1 then clicked(2) = 0
return

C'est édifiant.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 13:38

Je crois que vous tous, vous confondez le sens de la fonction clicked() et la variable système NUMBER_CLICK.

En effet, la fonction clicked(n) retourne 1 si l'objet n a été cliqué. Ce qui est le cas, et reste vrai même si un autre objet a été cliqué. Par contre, la variable NUMBER_CLICK contient le numéro du dernier objet cliqué. Si l'on surveille cette variable au lieu de tester clicked(1), on peut détecter l'évènement dès qu'on clique dans la form 0.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 14:32

Ok Klaus, c'est d'ailleurs pour cette raison que je dis au départ que ce n'est pas très clair.

Mais les exemples montrent qu'il y a un problème avec cette fonction, et c'est le but de cette discution.

Je préfère mettre un on_click sur chaque objet concerné pour que number_click soit actif, sinon cela ne fonctionne, et avec par exemple select number_click définir la partie programme concernée.

Maintenant Bignono montre un exemple pour parler d'un bug, mais surement dans son programme, il a une bonne raison de procéder ainsi. Si il n'y a pas de bug, tel qu'on voit le résultat, peux-tu me dire à quoi sert cette fonction : clicked(x) , si cela reste bloqué?
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 14:50

La variable NUMBER_CLICK a besoin d'un vrai évènement ON_CLICK pour se remplir. Ce n'est pas le cas avec un bouton qui n'a pas de ON_CLICK. De même, le clic sur le bouton ne peut être prie en compte correctement que si l'on utilise une vraie gestion des évènements. Ces boucles WHILE sont l'exacte contre-exemple de ce qu'il faut faire en Panoramic.

Mais un peut améliorer la chose en déclarant un ON_CLICK bidon (routine vide) et un DISPLAY dans la boucle:
Code:
' la seconde boucle while end_while n'est jamais exécutée
button 1:caption 1,"Cliquez-moi !"
label click1 : on_click 1,click1
memo 2:left 2,100
while clicked(1)=0
  item_add 2,date$+" il est "+time$
  display
end_while

' print_target_is 2:print clicked(1):end

while clicked(1)=0
  item_add 2,time$+" nous sommes le "+date$
end_while
end
click1:
return

Le DISPLAY sert à permettre à Windows (et Panoramic) de gérer ses évènements. Et la routine CLICK1 fait au moins un semblant de gestion d'évènement. Ceci dit, il ne faut absolument pas programmer comme ça, encore moins dans la partie initialisation du programme, avant le END.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 15:59

Klaus a écrit:
Je crois que vous tous, vous confondez le sens de la fonction clicked() et la variable système NUMBER_CLICK.

Bon, je me qualifie souvent moi-même de programmeur du dimanche, mais je regarde quand même la doc. Je ne confond pas ces 2 mots clés.

Ceci dit: peux-tu expliquer que l'on peut écrire if clicked(1) = 1 then clicked(1) = 0 dans une version de Panoramic et pas dans l'autre !

A+
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 16:06

Citation :
Ceci dit: peux-tu expliquer que l'on peut écrire if clicked(1) = 1 then clicked(1) = 0 dans une version de Panoramic et pas dans l'autre !
Si jamais ça a marché dans une version ancienne de Panoramic, alors c'était un bug, et un bug énorme ! Comment imaginer affecter une valeur à une fonction - une fonction doit retourner une valeur, pas le contraire ! Tu pourrais aussi bien vouloir faire sin(2)=0 , et espérer que la prochaine fois que tu utilises sin(2), cela te retournera 0...

Non, il faut être clair. CLICKED(n) est une fonction, et en tant que telle, elle ne peut que figurer à droite du signe "=". Tu ne peux jamais affecter une valeur à une fonction, quelle qu'elle soit.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 16:38

Je te confirme qu'avec la version V09.25 le 2ème code que j'ai fournis plus haut, çà fonctionne parfaitement. On change la valeur de CLICKED par le programme.

Bref, çà pose quand même un problème: Comment fait t'on pour réinitialiser la valeur de CLICKED(N) à zéro puisque OFF_CLICK N ne le fait pas Question
On ne peut donc tester le bouton qu'une seule fois ????

Bon attendons de voir ce qu'en pense Jack.

A+
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 16:59

Un truc intéressant:
J'ai tenté un contournement, et voilà que j'arrive à faire des accès violations à tous les coups, puis un message "Abstract error" en cliquant tour à tour sur les boutons 1 et 2.
Cette fois c'est dans les 2 versions
Essayer le code suivant:
Code:
label clic
init()

END
clic:
  message "Bouton n°1="+str$(clicked(1))+" / Bouton n°2="+str$(clicked(2))
  delete 1 : delete 2 :  init()
return

SUB init()
 button 1:caption 1,"bouton 1" : on_click 1,clic
 button 2:caption 2,"bouton 2" : on_click 2,clic : top 2,30
END_SUB

A+

Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:00

Je pense que Jack pourrait clarifier le fonctionnement de la fonction CLICKED(n). La doc dit que cette fonction retourne 1 si l'objet a été cliqué, et 0 sinon. Rien n'est dit sur une éventuelle remise à zéro lors d'un clic sur un autre objet. En fait, une fois que l'objet a été cliqué, cette fonction retournera toujours 1, pour cet objet. Et je suis d'accord: ce n'est pas normal.

Mais comment faire ? Le mieux serait peut-être que le fait d'appeler la fonction CLICKED(n) sur l'objet n mette à zéro l'indicateur interne, celui qui est utilisé par la fonction pour trouver la valeur à retourner. C'est à Jack de voir. Le problème est parfaitement mis en lumière ici:
Code:
label click1,click2
button 1 : top 1,10 : left 1,10  : caption 1,"bouton 1" : on_click 1,click1
button 2 : top 2,10 : left 2,110 : caption 2,"bouton 2" : on_click 2,click2
memo 3  : top 3,40 : left 3,10

end

click1:
item_add 3,""
item_add 3,"click 1"
item_add 3,"clicked(1)="+str$(clicked(1))
item_add 3,"clicked(2)="+str$(clicked(2))
return

click2:
item_add 3,""
item_add 3,"click 2"
item_add 3,"clicked(1)="+str$(clicked(1))
item_add 3,"clicked(2)="+str$(clicked(2))
return

Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:03

On s'est croisé. Ta tentative de supprimer et de recréer le bouton est vouée à l'échec également. En effet, tu fais cela dans la routine ON_CLICK du bouton que tu veux supprimer. Et lorsque l'exécution rencontre le RETURN, elle fait quoi ? Tu as coupé la branche sur laquelle tu étais assis !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:05

Pourtant le N° d'objet est bien le même et il est créé avant le return scratch

A+

Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:21

EUREKA !

Code:
label clic
init()

END
clic:
  message "Bouton n°1="+str$(clicked(1))+" / Bouton n°2="+str$(clicked(2))
  off_click 1 : off_click 2 : delete 1 : delete 2
  init()
return

SUB init()
 button 1:caption 1,"bouton 1" : on_click 1,clic
 button 2:caption 2,"bouton 2" : on_click 2,clic : top 2,30
END_SUB

Je pensais que DELETE N supprimait également le ON_CLICK N

A+
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:32

Résultat: "Abstract error" et "access violation".

Tu peux le tourner comme tu veux, faire OFF_ERROR ou non. Tu n'as tout simplement pas le droit de supprimer un objet dans une routine qui a été lancée par cet objet. C'est clair et net, et ce n'est même pas Panoramic qui est en cause: c'est une restriction majeure de Windows. Il n'y a aucun moyen de contourner cela. Tant que tu es dans une section de code activée par un objet, tu ne peux pas supprimer cet objet.

Maintenant, je vais te donner le moyen de le faire quand-même. Définis un timer avec un délai sufisamment lmong (100 ms ou similaire). Maintenant, dans la routine ON_CLICK, immédiatement avant le RETURN, tu actives le timer. Et dans la routine du timer, tu peux supprimer le bouton initial, et le recréer.

Mais, franchement, quelle gymnastique pour contourner une limitation technique du système ? Ne serait-il pas plus judicieux de revoir l'organisation du programme ? Car, après tout, ces astuces ne sont absolument pas garanties de fonctionner dans l'avenir !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:45

Tu as raison, je n'avais pratiquement plus d'accès violation, mais c'est revenu.

Citation :
Tu n'as tout simplement pas le droit de supprimer un objet dans une routine qui a été lancée par cet objet. C'est clair et net, et ce n'est même pas Panoramic qui est en cause: c'est une restriction majeure de Windows. Il n'y a aucun moyen de contourner cela. Tant que tu es dans une section de code activée par un objet, tu ne peux pas supprimer cet objet.

Tu m'as peut-être trouvé le bug que j'ai toujours dans mon programme de compte.

A+
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:46

Smile Smile Smile Smile Smile
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Invité
Invité




clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 17:55

Bien revenons en arrière. L'un des tout premier programme que j'ai fait et publié, était :Jardin potager. Il se trouve à cette adresse: jardin potager

Ce programme je l'ai commencé alors qu'on ne pouvait déclarer que 30 objets, et je ne sais plus 200 variables (y compris le nombre de ligne d'un tableau). Il a été débloqué sur les nombres d'objets et le reste pendant ce temps là. Ce programme utilisait clicked() pour savoir ce qui était cliqué. Number_click et beaucoup d'autre choses n'existaient pas.

La commande clicked() servait justement a savoir ce qui était cliqué dans une boucle. Il était évident que la valeur revenait a 0 ensuite, sinon c'était fini, cela ne fonctionnait pas.

Donc je répète: on clique sur un objet, et on peut voir si celui-ci est cliqué. Ensuite il revient à zéro, pour être de nouveau cliqué. C'est le fonctionnement normal de clicked().

Dans cette version il y a un BUG! Pour moi c'est le point final. Le seul contournement est de prendre une autre méthode pour l'instant. On a pas a essayer de réinitialiser cliqued(), cela doit-être automatique.

Sur ce, je retourne au travail.
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 69
Localisation : 83 Var
Date d'inscription : 07/05/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 18:01

Je suis d'accord avec Cosmos,
Je rediffuse le message de Klaus qui finalement en arrive au même constat.

Klaus a écrit:
Je pense que Jack pourrait clarifier le fonctionnement de la fonction CLICKED(n). La doc dit que cette fonction retourne 1 si l'objet a été cliqué, et 0 sinon. Rien n'est dit sur une éventuelle remise à zéro lors d'un clic sur un autre objet. En fait, une fois que l'objet a été cliqué, cette fonction retournera toujours 1, pour cet objet. Et je suis d'accord: ce n'est pas normal.

Mais comment faire ? Le mieux serait peut-être que le fait d'appeler la fonction CLICKED(n) sur l'objet n mette à zéro l'indicateur interne, celui qui est utilisé par la fonction pour trouver la valeur à retourner. C'est à Jack de voir. Le problème est parfaitement mis en lumière ici:
Code:
label click1,click2
button 1 : top 1,10 : left 1,10  : caption 1,"bouton 1" : on_click 1,click1
button 2 : top 2,10 : left 2,110 : caption 2,"bouton 2" : on_click 2,click2
memo 3   : top 3,40 : left 3,10

end

click1:
item_add 3,""
item_add 3,"click 1"
item_add 3,"clicked(1)="+str$(clicked(1))
item_add 3,"clicked(2)="+str$(clicked(2))
return

click2:
item_add 3,""
item_add 3,"click 2"
item_add 3,"clicked(1)="+str$(clicked(1))
item_add 3,"clicked(2)="+str$(clicked(2))
return


J'ajoute que ce même code remet CLICKED(N) à zéro sur le version V09.25 comme l'a constaté Bignono.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12296
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème EmptyVen 3 Avr 2015 - 18:21

Entièrement d'accord avec Jean-Claude et Cosmos70. Cette version a un bug dans la fonction CLICKED(n).
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





clicked(n) problème Empty
MessageSujet: Re: clicked(n) problème   clicked(n) problème Empty

Revenir en haut Aller en bas
 
clicked(n) problème
Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant
 Sujets similaires
-
» clicked(n)
» clicked, on_click
» Version 9.15 : bug avec les objets button (clicked() ?)
» Problème avec select case Probleme réglé merci
» Problème avec la nouvelle fonction de kgf.

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Un problème avec PANORAMIC?-
Sauter vers: