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
» Gestion d'un système client-serveur.
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar Klaus Aujourd'hui à 9:32

» item_index(résolu)
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar jjn4 Mar 14 Mai 2024 - 19:38

» Bataille terrestre
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar jjn4 Lun 13 Mai 2024 - 15:01

» SineCube
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar Marc Sam 11 Mai 2024 - 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar Marc Sam 11 Mai 2024 - 12:22

» Philharmusique
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0(résolu)
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
pouvez-vous me dire pourquoi ce code plante. (Résolu) Emptypar Klaus Lun 6 Mai 2024 - 11:41

» @Jack
pouvez-vous me dire pourquoi ce code plante. (Résolu) 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 : -39%
Pack Home Cinéma Magnat Monitor : Ampli DENON ...
Voir le deal
1190 €

 

 pouvez-vous me dire pourquoi ce code plante. (Résolu)

Aller en bas 
4 participants
AuteurMessage
Jean Claude

Jean Claude


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

pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) EmptyLun 12 Oct 2015 - 20:44

Bonjour à tous,
Tout est dans le titre, ça sent le bug (à moins que quelque chose m'échappe).

ATTENTION: Ce code Plante (du moins chez moi), préparer votre tueur de tâche...
Code:
label change
check 1 : caption 1,"Check 1"
mark_on 1
on_click 1, change

END

change:
  if checked(1)=1 then mark_off 1
  if checked(1)=0 then mark_on 1
RETURN

Je suis à peu près certain que ça marchait avant la version actuelle (V0.9.26).

Si quelqu'un d'entre-vous possède la version précédente (même une version instantanée) je suis preneur.
Car je commence à avoir de sérieux doutes sur la version actuelle.

A+


Dernière édition par Jean Claude le Mar 13 Oct 2015 - 7:35, édité 1 fois
Revenir en haut Aller en bas
JL35




Nombre de messages : 7095
Localisation : 77
Date d'inscription : 29/11/2007

pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: Re: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) EmptyLun 12 Oct 2015 - 21:07

Bonsoir Jean Claude,
Effectivement ça plante... c'est pourtant simple...

Mais une question: pourquoi faire mark_on ou mark_off, quand tu cliques sur le check, il change automatiquement de nature au clic ?
Tu me diras, ce n'est pas ça la question...

Ca paraît même un peu tordu:
- il est à 1, tu cliques, il passe automatiquement à 0, tu vas dans le s/p change qui donc le trouve à 0 et le repasse à 1, et tout ça se passe en même temps, ça doit se mélanger les pinceaux... et je me demande si c'était le but cherché.
Revenir en haut Aller en bas
Marc

Marc


Nombre de messages : 2397
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: Re: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) EmptyLun 12 Oct 2015 - 21:27

Bonsoir,
Je pense que la remarque de JL35 est très judicieuse :
Double commande donc plantage...

SUB donc inutile que j'ai quand même conservé pour mes tests :

Code:
label menu
check 1
caption 1,"Check 1"
' mark_on 1
on_click 1, menu

END

menu:
  if checked(1)=1 then print "OK"
  if checked(1)=0 then print "PAS OK"
RETURN

Et je n'ai plus de plantage.

J'ai besoin d'un coup de main aussi, j'ouvre un autre sujet...
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

pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: Re: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) EmptyLun 12 Oct 2015 - 21:47

Merci à vous deux,

En fait cette case à cocher est prévu pour un enregistrement ultérieur de sa condition CHECKED(N)=1 ou 0.
Exemple: pour un mot de passe si elle est cochée alors le programme charge automatiquement le mot de passe dans un edit (en SECRET_ON bien sur). Et l'utilisateur peut la décocher ou la cocher pour annuler ou pas la mémorisation du mot de passe et enregistrer la nouvelle condition dans un fichier.

J'ai recherché dans mes codes (car j'ai déjà utilisé cette méthode de mémorisation) et il est vrai que je ne l'ai pas fait de la même manière. J'étais dans le style de Marc37.

J'abandonne cette façon de faire.... Mais je ne vois pas pourquoi ça ne marche pas.

A+
Revenir en haut Aller en bas
Klaus

Klaus


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

pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: Re: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) EmptyMar 13 Oct 2015 - 1:28

Pourquoi ça ne marche pas ? Simple ! Lorsque tu cliques sur la case, la coche de la case s'inverse. Mais parallèlement, l'évènement on_click se déclenche et la case est repositionnée dans son état inverse (état avant le clic). Or, ceci déclence le même évènement, avant que la routine change ait pu faire son return. Et ainsi de suite, indéfiniment, par elle ne passera plus par son return. Et donc, à un moment, il y a violation de mémoire caril y a dépassement de pile.
Essaie ceci - tu verras mieux ce qui se passe:
Code:
label change
check 1 : caption 1,"Check 1"
mark_on 1
on_click 1, change

END

change:
  off_click 1
  if checked(1)=1 then mark_off 1
  if checked(1)=0 then mark_on 1
  on_click 1, change
RETURN

En fait, pour ton histoire de mot de passe, il ne faut surtotu pas faire d'évènement on_click sur le combo. Simplement, au moment de décider quoi faire avec le mot de passe, tu interroges la combo par la fonction checked(1) qui te retourne l'information dont tu as besoin.
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

pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: Re: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) EmptyMar 13 Oct 2015 - 7:35

Je regrette d'avoir posté ce sujet, car en y regardant bien le code n'est pas cohérent.

Mon code, tel que je l'ai présenté, fonctionne bien à condition de remplacer Mark_on et Mark_off par une variable qui sera enregistrée. Ensuite au démarrage du programme cette variable servira à cocher ou pas le Check (c'est à ce moment là que Mark_on et Mark_off sont utile)

Désolé de vous avoir fait perdre votre temps.

A+
Revenir en haut Aller en bas
Contenu sponsorisé





pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty
MessageSujet: Re: pouvez-vous me dire pourquoi ce code plante. (Résolu)   pouvez-vous me dire pourquoi ce code plante. (Résolu) Empty

Revenir en haut Aller en bas
 
pouvez-vous me dire pourquoi ce code plante. (Résolu)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [RESOLU] Pouvez-vous voir ce que je n'arrive pas à saisir?
» Et pourquoi ?...[RESOLU]
» [Résolu] Pourquoi item_add n'ajoute pas un caractère?
» Un programme plante sous l'IDE, mais marche sous l'éditeur
» [Résolu] SCANCODE ne scanne pas (ou plus) le code !

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: