| Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT | |
|
+8Klaus papydall silverman Jean Claude Yannick Marc Minibug Jack 12 participants |
|
Auteur | Message |
---|
Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Mer 3 Mai 2017 - 17:17 | |
| - Jean Claude a écrit:
- Pour utiliser FIND dans le code de Jack (tout là haut), une boucle while ne convient pas, car la recherche va au bout du source qui est chargé.
Tout à fait, une fonction FIND dans une boucle n'a de sens que si la boucle est interrompue en demandant une action. Par contre une fonction REPLACE dans une boucle permet de remplacer toutes les occurences d'une chaine par une autre. Remarque : je ne l'ai pas encore précisé, mais les fonctions FIND et REPLACE sont valables aussi pour les objets MEMO et MEMO_RICH. _________________ username : panoramic@jack-panoramic password : panoramic123
Dernière édition par Jack le Jeu 4 Mai 2017 - 20:37, édité 1 fois | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Mer 3 Mai 2017 - 17:24 | |
| | |
|
| |
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Mer 3 Mai 2017 - 19:32 | |
| Bonjour à tous! Je crois qu'il y a un bug avec la fonction "REPLACE" voici mon fichier test: essai.txt - Code:
-
' essai fonction replace : ==> remplacer "p r i n t" par "imprime" ' PANORAMIC_EDITOR V0928i3
print print print "bonjour" print "monsieur" Voici mon programme de test: - Code:
-
SYNEDIT 1:' création d'un objet SYNEDIT full_space 1 FILE_LOAD 1,"c:\mesprog\essai.txt" message "remplacer print par imprime" DIM P WHILE P<>-1 P=REPLACE("print","imprime",1,P) message P END_WHILE
Le premier print est bien remplacé, le second est zappé, le troisième est remplacé et après voir l'image ci-dessous: | |
|
| |
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Mer 3 Mai 2017 - 19:37 | |
| Au fait, Jack, Tu as annoncé le BUTTON_PICTURE avec les commandes PICTURE_TOP, PICTURE_LEFT, PICTURE_RIGHT, PICTURE_BOTTOM, mais on a eu aucun exemple pour s'en servir! C'est la même chose pour memo_rich! Pour les autres commandes par tatonnement, j'ai trouvé...! Merci Jack! | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Mer 3 Mai 2017 - 20:06 | |
| Salut Bignono ! Ça fait plaisir de te voir. Ben oui moi aussi j'ai testé et y a bien encore un problème sur l’éditeur. Par contre il n'y a plus de message d'erreur à l'ouverture et en cours d'utilisation. C'est déjà un grand bond en avant. Bravo Jack ! Concernant la commande BUTTON_PICTURE : - Code:
-
BUTTON_PICTURE 1 TOP 1,100 : LEFT 1,100 : HEIGHT 1,60 : WIDTH 1,70 PICTURE_TOP 1 FILE_LOAD 1,"D:\BASIC\GPP\sys\img\ico1\01.bmp" FONT_BOLD 1 : FONT_SIZE 1,12 CAPTION 1,"Ouvrir" END Et voila le résultat : | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Mer 3 Mai 2017 - 20:32 | |
| Salut Bignono, J'espère que tout va bien pour toi. J'ai essayer ton code en triturant, et le code, et le fichier. pour le code j'ai remplacé "print" et "imprime" par des variables, ça ne change rien. Par contre, une piste pour Jack, si j'ajoute une ligne (rem) au fichier essai.txt, il y a un petit changement. Seule le deuxième "print" n'est pas remplacé. Alors qu'avec ton fichier d'origine le dernier "print" n'est pas remplacé non plus. A+ | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 1:31 | |
| Salut bignono. J’ai posté un code exemple pour les nouvelles commandes ici.Je le rappelle ci-dessus. - Code:
-
rem ============================================================================ rem TEST DE LA VERSION V.0.9.28i1 rem ============================================================================ dim i width 0,1000
main_menu_pop 100 sub_menu 200 sub_menu 300 sub_menu 400 parent 200,100 : caption 200,"Sub_Menu200" parent 300,200 : caption 300,"Sub_Menu300" parent 400,200 : caption 400,"Sub_Menu400" mark_on 400
for i = 1 to 5 led1 i : top i,50 : left i,50*i : hint i,"LED" next i for i = 1 to 5 mark_on i : pause 1000 mark_off i next i for i = 10 to 19 digit1 i : top i,100 : left i, 60*(i-9) : hint i,"DIGIT" caption i,i-10 next i switch1 20 : top 20,200 : left 20,100 : hint 20,"SWITCH" shape 30 : top 30,200 : left 30,200 : hint 30,"SHAPE" alpha 999 : top 999,300 : left 999,100 : font_bold 999 caption 999,"Faites un <CLICK-DROIT> où vous voulez ..." rem ============================================================================
REM Positionnez le curseur de la souris sur les objets pour afficher leur HINT. | |
|
| |
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 7:34 | |
| Bonjour à tous, bonjour Papydall Oui j'avais déjà vu ton programme, mais il y a des bugs avec certains de ces nouveaux objets. Je sais que Jack ne peut pas tout traiter de suite et il faut être patient. Sur ton programme exemple Papydall, il suffit de cliquer gauche (oui je suis un cliqueur fou! ) soit sur l'interrupteur switch une ou plusieurs fois soit sur le digit pour que cela parte en erreur. D'ailleurs, les codes suivants permettent de s'en rendre compte de suite! Juste une ligne: - Code:
-
switch1 20 ou - Code:
-
digit1 20 vous faites 1 ou 2 clic gauche sur l'objet et pan! erreur. Voilà, Jack, je te fais remonter ce que j'ai constaté! Tu as encore beaucoup de pain sur la planche!!! A+ | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 8:24 | |
| @ Jack : Je viens d'ouvrir l'editeur (28i3) et après avoir tapé une seule ligne de code, J'ai eu de nouveau un plantage de l'éditeur à l’exécution de cette ligne. Il y a bien toujours un bug au démarrage ! Bon courage... | |
|
| |
Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 10:18 | |
| @bignono: 1 - je vais regarder ce problème de la fonction FIND qui, dans le code que tu proposes, n'a pas le résultat attendu.
2 - pour les objets SWITCH1 et DIGIT1, c'est normal. Il reste 4 objets pour lesquels la gestion des événements n'a pas encore été codée et qui sont susceptibles de déclencher une erreur lors d'un clic ou d'un survol par la souris. Ce sont : LED1, DIGIT1, SWITCH1, IMAGE.
@Laurent: Avant de sortir des nouvelles versions de MAKE_EXE et du compilateur, puis que je m'étais fixé ces buts, je vais essayer de tordre le cou à ce problème de "plantage" de l'éditeur. Comme je ne sais pas ce qui se passe, je vais sortir une nouvelle version de l'éditeur qui, avant de "planter", affichera des renseignements qui m'aideront à comprendre ce qui se passe. _________________ username : panoramic@jack-panoramic password : panoramic123 | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 10:28 | |
| | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 11:58 | |
| Salut tout le monde. Dans le code suivant, la valeur de p = 38, correspond à ... ( quoi ?) la position du dernier caractère de la chaine. Mais pourquoi 38 ? Pour info : Le fichier hello.txt à charger dans le SYNEDIT contient uniquement celle ligne : Hello world ! - Code:
-
dim t1$,t2$,p synedit 10 top 10,50 : left 10,100 file_load 10,"C:\Users\acer\Desktop\Test\hello.txt" : ' Adapter le chemin t1$ = "Hello world !" : t2$ = "Bonjour le monde !" print "p = " ; p pause 1000 p = replace(t1$,t2$,10,p) print "p = " ; p
| |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 13:09 | |
| Je crois avoir trouvé une part du problème de l'erreur au démarrage de Panoramic Editor...
Si le lance l'Editeur que j'appelle PANORAMIC_EDITOR.exe et que je colle quelques ligne de codes. L'execution est OK !
Si maintenant je renomme l'éditeur en PANORAMIC_EDITOR 0.9.28i3.exe et que je le lance puis je colle quelques ligne de codes. L'exécution plante avec les différents messages déjà vus !
Il s'agit d'un test qu'il faut sûrement creuser... | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 13:47 | |
| Pour moi l'éditeur s'appelle toujours PANORAMIC_EDITOR.exe quelle que soit la version et j'ai quand même l'erreur au démarrage de temps en temps avec les nouvelles versions. C'est bien embêtant d'avoir tapé quelques dizaines de lignes de code, de faire un premier lancement pour voir le résultat, et de planter irrémédiablement sans aucune possibilité de sauvegarde de ce qui a été saisi et qui est donc perdu définitivement. Avec à la relance parfois cette histoire de PANORAMIC_TEMP_xxx.bas.exe qui est resté actif et qui bloque tout (j'ai même fait un petit utilitaire pour le supprimer...).
Du coup, comme c'est un peu agaçant à la longue, je suis revenu à la version 0.9.27 de fin janvier, en attendant mieux. Je testerai plus tard les nouvelles fonctions. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 13:56 | |
| - Citation :
- C'est bien embêtant d'avoir tapé quelques dizaines de lignes de code, de faire un premier lancement pour voir le résultat, et de planter irrémédiablement sans aucune possibilité de sauvegarde de ce qui a été saisi et qui est donc perdu définitivement.
J'ai pris l'habitude d'enregistrer systématiquement avant d'exécuter. D'une part, je ne perds rien, et d'autre part, curieusement, cela réduit significativement le nombre de plantages. En s'il y en a, le plus souvent (quoique pas systématiquemen) c'est parce que j'ai oublié de sauvegarder. Ce qui est vrai, que si l'on démarre Panoramic_Editor, on saisit un code et on lance, on a presque toujours un plantage. J'ai l'impression que cela dépend du dossier dans lequel se trouve Panoramic_Editor.exe, et des droits d'accès qui y sont attachés. Chez moi, le chemin complet est: "C:\Program Files (x86)\Panoramic Editor V 0.9.28\PANORAMIC_EDITOR V0 9 28i2 du 02 05 2017.exe" Le dossier ne permettant pas forcément d'y créer un fichier, il y a plantage en exécution. Mais si je déplace "Panoramic_Editor V0 9 28i2 du 02 05 2017.exe" dans mon dossier de travail où se trouvent mes sources (quelque part sous "Mes documents"), cela se passe beaucoup mieux. | |
|
| |
silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 14:31 | |
| Il y a aussi un pb avec FIND; les positions retournées par cette fonction ne sont pas bonnes, elles sont incrémenté de 1 Pour REPLACE, la position retourné n'est pas bonne comme l'a vu papydall. Du coup, réinjecter une mauvaise position dans la fonction ne donne pas le résultat attendu. J'ai testé avec SYNEDIT / MEMO; En remplacant le dernier argument de REPLACE par le résultat d'un INSTR_POS d'un memo, toutes les occurences sont bien remplacées Switchez les lignes 18 et 19 pour voir la différence... (Attention, j'ai conservé la même longueur de chaine à remplacer que celle recherché pour simplifier le code, sinon il faudrait modifier le memo au fur et à mesure) Le fichier "hello.txt" est très proche de celui de bignono: - Code:
-
' essai fonction replace : ==> remplacer "print" par "PRINT" ' PANORAMIC_EDITOR V0928i3
print print print "bonjour" print "monsieur" Code de test: - Code:
-
top 0,400 DIM S , txt$ , null , M , rep$
SYNEDIT 1:' création d'un objet SYNEDIT full_space 1 FILE_LOAD 1,"C:\Documents and Settings\Utilisateur\Bureau\testpe28i3\hello.txt"
memo 2 : hide 2 :' pour comparer les positions par rapport à celles dans un memo FILE_LOAD 2,"C:\Documents and Settings\Utilisateur\Bureau\testpe28i3\hello.txt" : txt$=text$(2)
rep$="PRINT" message "remplacer print par "+rep$
WHILE S<>-1 M=instr_pos(txt$,"print",M+1) ' S=FIND("print",1,S) :' position incrémenté de 1 par rapport à celle d'un memo ' null=REPLACE("print",rep$,1,S-1) :' tous les print sont remplacés SAUF le dernier null=REPLACE("print",rep$,1,M) :' tous les print sont remplacés message " SYNEDIT pos: "+str$(S)+" MEMO pos: "+str$(M) END_WHILE On peut aussi mettre 0 en dernier argument de REPLACE, cela force la fonction à rechercher depuis le début et toutes les occurences rechercées sont remplacées. Ca montre que le remplacement fonctionne parfaitement, et que c'est bien la position renvoyé qui est erroné. | |
|
| |
silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 14:59 | |
| Concernant le BOUTON_PICTURE que j'utilise depuis un moment(avant son annonce officielle en fait ), les commandes PICTURE_TOP, PICTURE_LEFT, PICTURE_RIGHT, PICTURE_BOTTOM, sont sans effet. Inactiver cet objet pose également un pb; le filtre qui transforme l'image du BOUTON_PICTURE en noir et blanc pour la griser ensuite, n'est probablement pas bien paramétré, et du coup l'image grisé n'apparait pas forcément. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Jeu 4 Mai 2017 - 15:12 | |
| @Klaus, Évidemment tu as raison quand tu dis qu'il faut enregistrer par prudence avant de lancer, mais parfois c'est juste un essai, ou un programme à usage unique (ça arrive), et je n'ai pas toujours le réflexe de le faire... Et c'est frustrant de l'avoir sous les yeux et de ne rien pouvoir faire !
Et tu as probablement raison également en parlant de l'implantation de Panoramic_Editor. Chez moi aussi il est dans Program Files (x86), et c'est sans doute la nouvelle façon de procéder qui gêne: création d'un fichier PANORAMIC_TEMP__xxx.bas.exe dans ce même répertoire qui doit poser un problème (répertoire plus ou moins tabou en écriture, dans certains cas, probablement). Ce qui me chiffonne un peu c'est que ça ne soit pas systématique, ou bien on peut, ou bien on ne peut pas, mais ça a l'air assez aléatoire... | |
|
| |
Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Ven 5 Mai 2017 - 13:30 | |
| J'ai mis à disposition une nouvelle version 0.9.28i4 dans laquelle:
- les fonctions FIND() et REPLACE() pour les objets MEMO, MEMO_RICH et SYNEDIT ont été complètement réécrites.
- l'éditeur, lors de l'exécution d'un source, affiche un renseignement au moindre problème.
Au cas où l'éditeur se "plante", un message explicatif est visualisé et tous les sources modifiés sont automatiquement sauvegardés. Mais je n'ai pas pu tester cela car je ne peux pas reproduire le "plantage" avec perte de controle que certains signalent. _________________ username : panoramic@jack-panoramic password : panoramic123 | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Ven 5 Mai 2017 - 13:44 | |
| Merci Jack,
Je vais tester dans la journée.
A+ | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Ven 5 Mai 2017 - 13:45 | |
| Merci Jack. Je télécharge et tente les premiers tests. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Ven 5 Mai 2017 - 14:01 | |
| A la vue des tous premiers tests avec plusieurs programmes, j'ai toujours le même message d'erreur : ERREUR : impossible d'obtenir le HANDLE de PANORAMIC_TEMP_xxxxxPS : Les xxxxx correspondent au nom des différents programmes lancés. Le plus surprenant dans cette histoire, c'est que parfois on lance le fichier sans problème et d'autres fois, même en effaçant les fichiers temporaires et les processus, cela bugue coup sur coup. La seule solution étant de tout quitter. Et encore parfois la relance est quand même KO ! | |
|
| |
silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Ven 5 Mai 2017 - 14:36 | |
| Jack, la réécriture à porté ses fruits, ca marche impeccable! Je peux implanter cet objet dans mon éditeur maintenant Je vais un peu abuser, mais si c'est pas trop long ou complexe à coder, ces instructions seraient les bienvenus: ' P = SYNEDIT_CARET_POSITION(N) : retourne la position courante du curseur ' SYNEDIT_POSITION_CARET N,P : positionne le curseur; avec si P>len(synedit) alors P=len(synedit). IL sera facile de retouver la len(synedit) avec SYNEDIT_CARET_POSITION(N)
Dernière édition par silverman le Ven 5 Mai 2017 - 16:14, édité 1 fois | |
|
| |
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| |
| |
silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT Ven 5 Mai 2017 - 16:17 | |
|
Dernière édition par silverman le Ven 5 Mai 2017 - 18:06, édité 2 fois | |
|
| |
Contenu sponsorisé
| Sujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT | |
| |
|
| |
| Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT | |
|