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
» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
bug off_activate 0 : sans effet Emptypar papydall Hier à 16:57

» PANORAMIC V 1
bug off_activate 0 : sans effet Emptypar papydall Hier à 3:22

» select intégrés [résolu]
bug off_activate 0 : sans effet Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
bug off_activate 0 : sans effet Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
bug off_activate 0 : sans effet Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
bug off_activate 0 : sans effet Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
bug off_activate 0 : sans effet Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0
bug off_activate 0 : sans effet Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
bug off_activate 0 : sans effet Emptypar Klaus Lun 6 Mai 2024 - 11:41

» Gestion d'un système client-serveur.
bug off_activate 0 : sans effet Emptypar Klaus Lun 6 Mai 2024 - 10:23

» @Jack
bug off_activate 0 : sans effet Emptypar Jack Mar 30 Avr 2024 - 20:40

» Une calculatrice en une ligne de programme
bug off_activate 0 : sans effet Emptypar jean_debord Dim 28 Avr 2024 - 8:47

» Form(résolu)
bug off_activate 0 : sans effet Emptypar leclode Sam 27 Avr 2024 - 17:59

» Bataille navale SM
bug off_activate 0 : sans effet Emptypar jjn4 Ven 26 Avr 2024 - 17:39

» Les maths du crocodile
bug off_activate 0 : sans effet Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

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 à ne pas rater :
Funko POP! Jumbo One Piece Kaido Dragon Form : où l’acheter ?
Voir le deal

 

 bug off_activate 0 : sans effet

Aller en bas 
3 participants
AuteurMessage
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

bug off_activate 0 : sans effet Empty
MessageSujet: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyVen 6 Juil 2018 - 13:02

Off_activate sur le form 0 reste sans effet.
En reprenant l'exemple de l'aide:
Code:
label active0,active1
dim k0%,k1%
k0%=0
k1%=0
height 0,200:width 0,300
alpha 10:top 10,20:left 10,20:caption 10, "Cliquez sur ce FORM"
form 1:left 1,310:height 1,200:width 1,300
alpha 11:parent 11,1:top 11,20:left 11,20
on_activate 0,active0
on_activate 1,active1
end
active0:
k0%=k0%+1
caption 0, "nombre d'activations: "+str$(k0%)+" : "+str$(NUMBER_ACTIVATE)
caption 10, ""
caption 11, "Cliquez sur ce FORM"
 OFF_ACTIVATE 0   :' <--- pas pris en compte
return
active1:
k1%=k1%+1
caption 1, "nombre d'activations: "+str$(k1%)+" : "+str$(NUMBER_ACTIVATE)
caption 10, "Cliquez sur ce FORM"
caption 11, ""
 OFF_ACTIVATE 1   :' <--- ok
return
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 968
Age : 51
Localisation : Picardie
Date d'inscription : 18/03/2015

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyLun 25 Mar 2019 - 15:03

Un autre exemple court qui provoque une erreur:
Code:
' V 0929i7
label traitement

caption 0,"Cliquez dans Form 11"
form 11 : left 11,600 : caption 11,"Form 11"
synedit 222 : set_focus 222

on_activate 0,traitement
on_activate 11,traitement

END
traitement:
  off_activate 0   :' <--- bug : provoque une erreur car sans effet
  off_activate 11
  test()
  on_activate 0,traitement
  on_activate 11,traitement
return

sub test()
 dim_local my_var
 set_focus 222 :' dès que form 11 est cliqué, "set_focus 222" activate le form 0 et cela entraine le déclenchement de la procédure 'traitement:'
               :' Du coup, 'END_SUB' n'a pas été atteind et le rappel de 'traitement:' éxécute à nouveau la sub 'test()'. Il en résulte que 'my_var' n'a pas été détruit ---> erreur(35)
end_sub
Revenir en haut Aller en bas
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyMer 27 Mar 2019 - 19:41

OK, il y a des problèmes. je regarde cela.

_________________
bug off_activate 0 : sans effet Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyJeu 28 Mar 2019 - 18:30

Le problème est corrigé.
La correction sera disponible dans la prochaine version.

_________________
bug off_activate 0 : sans effet Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Klaus

Klaus


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

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyJeu 28 Mar 2019 - 21:11

Jack, je m'excuse par avance du hors-sujet que je m'apprête à faire. Mais j'ai l'impression que l'occasion est trop belle, juste avant la sortie d'une nouvelle version corrigeant entre autres un bug.

Serait-il possible d'introduire, dans une position fixe, une structure comme suit:
Code:
var
  NumberOfArrayPointers: integer;
  ArrayPointers: array [0..NumberOfArrayPointers] of pinteger;
...
 ArrayPointers[0] := @vt;
 ArrayPointers[1] := @...
...
Ainsi, en récupérant l'adresse de ce tableau, j'aurais tout ce qui est nécessaire...

Si cette proposition est en-dehors de ta vision de Panoramic, oublie - ce n'est pas grave.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyMer 3 Avr 2019 - 7:47

@Klaus:
J'ai créé une variable système ADR_VARTAB qui donne l'adresse du début de la structure (Var_Nom) du premier élément de la table des variables (tv[0]).
Cela donne quelque chose comme ça:
Code:
Addr(tv[0].Var_Nom)

Ce sera disponible dans la prochaine version.

_________________
bug off_activate 0 : sans effet Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Klaus

Klaus


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

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyMer 3 Avr 2019 - 9:36

Je te remercie, Jack, de prendre en compte ma suggestion.

Malheureusement, ce n'est pas tout à fait ce qu'il faut. Toutes ces tables sont créées sur le heap, et donc, à chaque modification de longueur d'une des tables, elle est recopiée avec agrandissement à un autre endroit du heap, et donc cette adresse change également. Je l'ai vérifié à de maintes reprises. Et on ne peut même pas garantir que les tables restent physiquement en mémoire dans l'ordre dans lequel elles ont été définies, du fait du mécanisme de copie/réallocation table par table, et non de l'ensemble des tables.

Ce qui ne change pas, c'est la valeur de @vt et ainsi de suite pour les autres tables. Ce qui serait bien, ce serait de créer un array de PInteger d'une seule dimension, mais un array fixe, non dynamique. Soit VarTab le nom de ce tableau. Alors, dans VarTab[0], on met @VT, et dans les autres les valeurs de @xxx pour chacune des tables. Ensuite, la nouvelle variable devrait contenir @VarTab[0] - là, c'est possible car étant un array fixe, VarTab n'est pas alloué sur le heap et donc son adresse ne change pas.

C'est juste une suggestion, Jack, puisque je vois que tu essaies de trouver une solution. Mais techniquement, on n'y est pas encore...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyMer 3 Avr 2019 - 19:35

J'ai compris ton problème.
Un code valant mieux qu'un long discours, voici comment cela va être codé.
ADR_VARTAB est une variable système pour Panoramic, mais en Delphi, c'est une fonction sans paramètre, d'où la présence d'un Return dans le code.

Données communes:
Code:
var
Ptr_Var : pointer;
VarTab : array [0..9] of pinteger; // tableau statique contenant 10 pointeurs

Code de la fonction ADR_VARTAB:
Code:
Ptr_Var := Addr(tv[0].Var_Nom); // pointe sur TV
VarTab[0] := Ptr_Var;
Result := integer(Ptr_Var);  // Valeur rendue par la variable système ADR_VARTAB
VarTab[1] := Addr(ti[0]); // pointe sur TI
VarTab[2] := Addr(tr[0]); // pointe sur TR
VarTab[3] := Addr(tc[0]); // pointe sur TC
VarTab[4] := Addr(ti2[0]); // pointe sur TI2
VarTab[5] := Addr(tr2[0]); // pointe sur TR2
VarTab[6] := Addr(tc2[0]); // pointe sur TC2
VarTab[7] := Addr(ti3[0]); // pointe sur TI3
VarTab[8] := Addr(tr3[0]); // pointe sur TR3
VarTab[9] := Addr(tc3[0]); // pointe sur TC3

_________________
bug off_activate 0 : sans effet Webdav username : panoramic@jack-panoramic password : panoramic123


Dernière édition par Jack le Mar 9 Avr 2019 - 11:56, édité 1 fois
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Klaus

Klaus


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

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyVen 5 Avr 2019 - 7:50

Onn y est presque, Jack ! Mais pas encore tout à fait...

En effet, tv[0].Var_Nom étant alloué sur le heap, son adresse change lorsque tu fais un SetLength(tv,...) puisque ce tableau est alors recopié. Idem pour ti[0] etc.

Il faudrait utiliser addr(tv), addr(ti), etc comme suit:
Code:
Ptr_Var := Addr(tv); // pointe sur TV
VarTab[0] := Ptr_Var;
Result := integer(Ptr_Var);  // Valeur rendue par la variable système ADR_VARTAB
VarTab[1] := Addr(ti); // pointe sur TI
VarTab[2] := Addr(tr); // pointe sur TR
VarTab[3] := Addr(tc); // pointe sur TC
VarTab[4] := Addr(ti2); // pointe sur TI2
VarTab[5] := Addr(tr2); // pointe sur TR2
VarTab[6] := Addr(tc2); // pointe sur TC2
VarTab[7] := Addr(ti3); // pointe sur TI3
VarTab[8] := Addr(tr3); // pointe sur TR3
VarTab[9] := Addr(tc3); // pointe sur TC3
Ainsi, on aura un tableau avec les adresses des variables, pas des données de ces variables. Et les adresses des variables sont fixes. Fais l'essai - compare addr(tv) avec addr(tv[0].Var_Nom) après un SetLength(tv,...).

Mais je vois que tu prends ma requête au sérieux ce dont je te suis très reconnaissant.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Jack
Admin
Jack


Nombre de messages : 2386
Date d'inscription : 28/05/2007

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyLun 8 Avr 2019 - 20:07

C'est fait dans la version instantanée V 0.9.29i8 du 08/04/2019.

_________________
bug off_activate 0 : sans effet Webdav username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
https://panoramic.1fr1.net
Klaus

Klaus


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

bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet EmptyLun 8 Avr 2019 - 21:50

Ah, super, Jack ! Je vais la télécharger de ce pas et continuer mes tests avec ça ! Ca devrait aller beaucoup mieux, ainsi !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





bug off_activate 0 : sans effet Empty
MessageSujet: Re: bug off_activate 0 : sans effet   bug off_activate 0 : sans effet Empty

Revenir en haut Aller en bas
 
bug off_activate 0 : sans effet
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» SPIN
» Effet inatendu.
» effet curieux sur memo
» Comment créer un effet de brouillard
» Code minimal, effet visuel spectaculaire !

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: