FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Compilateur FBPano
par jean_debord Aujourd'hui à 11:07

» Documentation de KGF
par Klaus Hier à 22:52

» Zoom sur une portion d'écran
par JL35 Hier à 21:51

» KGF_dll - nouvelles versions
par Klaus Hier à 21:31

» double guillemets "" dans un EDIT
par pascal10000 Hier à 21:08

» Recherche d'une expression dans un source
par Marc 37 Hier à 13:08

» Tracer une grille n'importe où sur l'écran
par JL35 Dim 19 Nov 2017 - 22:14

» TourD Version 2
par Klaus Sam 18 Nov 2017 - 23:58

» La métamatière et le peuple
par JL35 Ven 17 Nov 2017 - 21:18

» Capture d'une zone de l'écran total
par JL35 Ven 17 Nov 2017 - 18:41

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Ven 17 Nov 2017 - 11:49

» qui peut résoudre mon prb
par pascal10000 Jeu 16 Nov 2017 - 17:30

» évènements et objets système : listage automatique
par Jean Claude Jeu 16 Nov 2017 - 11:15

» Panoramic et la reconnaissance vocale.
par papydall Jeu 16 Nov 2017 - 3:45

» Bizzarerie dans Edge
par Marc 37 Mer 15 Nov 2017 - 17:45

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2017
LunMarMerJeuVenSamDim
  12345
6789101112
13141516171819
20212223242526
27282930   
CalendrierCalendrier

Partagez | 
 

 Ajout de KGF_OBJ.bas à mon site Web

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Klaus

avatar

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

MessageSujet: Ajout de KGF_OBJ.bas à mon site Web   Jeu 14 Nov 2013 - 14:39

J'ai ajouté KGF_OBJ.bas à mon site Web.

Le fichier est accessible sur la page "Externes", par le lien en bas à gauche.

Il y a également, sur la deuxième page consacrée à Panoramic, une rubrique:
"Des EDIT avec filtres et masques"
avec lien d'aide et un lien de téléchargement spécifiquement pour les procédures xEditFilter et xEditMask.


Dernière édition par Klaus le Dim 17 Nov 2013 - 20:39, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Klaus

avatar

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

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Sam 16 Nov 2013 - 1:12

J'ai complété KGF_OBJ.bas en y ajoutant TOUS les objets connus à ce jour, y compris les objets invisibles. Ceci permet de gérer l'ensemble des objets sans se préoccuper d'allouer des numéros d'objet. A tout moment, on peut ajouter n'importe quel objet dans un programme sans aucun risque de rencontrer un conflit de numéros d'objet.

Et pour avoir accès aux numéros d'objet dont on a besoin, il suffit de créer une variable globale pour chacun de ces objets, et u placer la valeur de no% juste après l'utilisation de la SUB qui crée l'objet. Exemple:
Code:
dim no_MaTrackBar%
...
xTrackBar(40,10,200,0,0,0,10,300)
no_MaTrackBar% = no%
...
position no_MaTrackBar%,180


Dernière édition par Klaus le Dim 17 Nov 2013 - 20:40, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
JL35



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

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Dim 17 Nov 2013 - 20:34

Quand tu dis KGF_SUB ci-dessus (les deux posts), je suppose qu'il faut lire KGF_OBJ...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Dim 17 Nov 2013 - 20:40

....oui... Heureusement que tu est vigilant ! J'ai corrigé.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
jean_debord

avatar

Nombre de messages : 762
Age : 63
Localisation : Limoges
Date d'inscription : 21/09/2008

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Mar 19 Nov 2013 - 12:56

Merci, Klaus !

J'essaye de réécrire mes programmes avec ces procédures. Je rencontre quelques petits problèmes :

1) Il semble que dans le SUB xPicture, la hauteur ne soit pas définie :

Code:

' paramètres: (top,left,width,height,parent)
sub xPicture(t%,l%,w%,h%,p%)
 if variable("no%")=0 then dim no%
 no% = no% + 1 : picture no%
   top no%,t% : left no%,l% : width no%,w%
   
   height no%, h%  : ' manque
   
   if p%>0 then parent no%,p%
end_sub
2) La numérotation des objets commence à 1, ce qui fait qu'on a toujours la fenêtre 0 qu'il faut cacher.  Ne pourrait-on commencer la numérotation à 0 ?

3) Je n'ai pas compris l'utilité des lignes suivantes. Je les ai désactivées sur ma copie.

Code:

message "KGF: on ne peut pas executer ce module directement !"
terminate
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.unilim.fr/pages_perso/jean.debord/index.htm
Klaus

avatar

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

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Mar 19 Nov 2013 - 13:21

Merci d'avoir essayé. Voici mes réponses:

1.
Tu as raison, un oubli bête de ma part. Le fichier KGF_OBJ.bas est corrigé, sur mon WebDav et mon site FunPic.

2.
L'objet numéro 0 est réservé pour la form 0, comme tu sais. C'est pourquoi aucun des objets créés par mes procédures ne peut avoir le numéro 0. D'ailleurs, mes procédures font systématiquement no%=no%+1 avant la création de l'objet. La variable no% est censé contenir le dernier numéro d'objet créé. Ainsi, on peut utiliser une des procédures de KGF_OBJ.bas, et faire suivre directement des commandes utilisant no% pour modifier l'objet qui vient d'être créé.

Mais tu peux faire commencer la numérotation n'importe où. Il suffit que tu déclares dans ton code dim no% : no% = 200 et tes objets seront créés avec les numéros 201, 202, etc.

3.
C'est une protection contre une exécution par erreur de ce code comme si c'était du code Panoramic normal. Essaie ce programme, dans lequel manque volontairement le END avant #INCLUDE:
Code:

message "Ca va planter maintenant..."
#INCLUDE "KGF_OBJ.bas"
Tu vas obtenir un message d'erreur sensé, généré par mon module. Ensuite, mets ces deux lignes en commentaire et relance ce petit code - tu verras la différence !

J'ai d'ailleurs appliqué la même technique das KGF_SUB.bas.

Certes, j'aurais pu faire autrement. J'aurais pu mettre "IF 1=2" en première ligne de KGF_OBJ.bas, et "END_IF en dernière ligne. L'exécution intempestive aurait alors tout simplement ignoré mon code et serait passé au-delà. J'ai préféré avoir un signal clair et parlant pour dire où ça ne va pas.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Invité
Invité



MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Mar 19 Nov 2013 - 15:08

Bonjour,
Je ne suis pas d'accord de mettre les include à la fin d'un code. C'est pas commun. Si encore on commence un programme vide, et que soit-même on ajoute les #includes, on sait ce qu'on fait. Dernièrement j'ai repris un code à la va vite , juste pour gagner du temps, et finalement je n'ai rien fait. Je n'ai eu que des plantages. J'ai vu ensuite qu'il y avait à la fin les appels de sub de kgf, et c'était pas dit, et comme je ne suis pas à jour et j'ai une autre vie, c'est resté tel-quel!
Un #include il faut l'encadrer soit par un teste négatif, ou alors, et cela marche aussi par "sub ma_sub_ou_autre()" et "end_sub" à la fin. Ainsi on peut mettre l'#include en première ligne, et modifier les chemins si nécessaire, vu que #include est une directive. Si le teste comme 'if 1=2' est dans l'#include, on a juste a marqué au début: #include, et conder sans s'occuper du reste.
Citation :
Certes, j'aurais pu faire autrement. J'aurais pu mettre "IF 1=2" en première ligne de KGF_OBJ.bas, et "END_IF en dernière ligne. L'exécution intempestive aurait alors tout simplement ignoré mon code et serait passé au-delà. J'ai préféré avoir un signal clair et parlant pour dire où ça ne va pas.
Pas d'accord le signal n'est pas clair, si on ne sait pas que la sub n'est pas signalée. De plus il faut parcourir tout le code pour le savoir).

Désolé de ne pas te suivre! Sad
Revenir en haut Aller en bas
Klaus

avatar

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

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Mer 20 Nov 2013 - 2:53

Ca se défend, Cosmos70. C'est une technique comme une autre.

Pour ma part, je préfère rester avec ma solution, pour la bonne et simple raison qu'en cas d'erreur, les numéros de lignes signalées sont les bons tant que l'erreur est dans le code du programme lui-même. Et dès qu'on voit qu'un numéro de ligne dépasse la taille du programme, on sait automatiquement que c'est dans le #INCLUDE. Il suffit de l'ouvrir dans un autre onglet et soustraire la longueur du programme du numéro de ligne pour avoir la ligne dans le module #INCLUDE. Ou, mieux encore, remplacer la ligne #INCLUDE par le contenu du module par un copier/coller. Mais le programme en lui-même est ainsi plus facile à débugger. En tout cas, c'est comme ça que je fais.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
jean_debord

avatar

Nombre de messages : 762
Age : 63
Localisation : Limoges
Date d'inscription : 21/09/2008

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Mer 20 Nov 2013 - 11:52

Merci pour tes réponses Klaus Smile

Mon problème, c'est que j'utilisais xForm pour créer la fenêtre principale, laquelle prenait le numéro 1, alors que j'avais déjà la form 0 qu'il me fallait donc cacher !

En définissant les propriétés de la form 0 par la méthode classique, il n'y a plus de problème.

J'ai mis un exemple de programme ici :

http://panoramic.free-boards.net/t3238-conversion-rgb-hsv
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.unilim.fr/pages_perso/jean.debord/index.htm
Klaus

avatar

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

MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   Mer 20 Nov 2013 - 12:26

@jean_debord:
Ah, je comprends mieux cette histoire de form 0.

Alors, effectivement, il faut que tu fasses HIDE 0; puis que tu crées ta form application par xForm. Et ensuite, tu as le choix:
- soit, tu utilises COMMAND_TARGET_IS no% juste après xForm
- soit tu fais dim no_form% ! xForm(...) : no_form0% = bo%
puis tu passes no_form0% dans le paramètre p% des autres procédures de KGF_OBJ.bas

Dans les deux cas, ça devrait bien marcher.

Petit inconvéniant de HIDE 0: le process disparaît de la parre des tâches. Solution: au lieu de HIDE 0, tu fais LEFT 0,3000 ce qui rend la form invisible également !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: Ajout de KGF_OBJ.bas à mon site Web   

Revenir en haut Aller en bas
 
Ajout de KGF_OBJ.bas à mon site Web
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: