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
» StratégoV8 et V9
par Minibug Aujourd'hui à 1:10

» Rotation d'une image d'un angle quelconque
par JL35 Hier à 23:02

» GRID_LOAD
par Jean Claude Hier à 21:04

» HVIEWER
par Yannick Hier à 20:31

» KGF_dll - nouvelles versions
par Klaus Mar 16 Jan 2018 - 21:28

» Déformation d'image en trapèze
par mindstorm Mar 16 Jan 2018 - 21:06

» Mah-Jong américain
par Jean Claude Lun 15 Jan 2018 - 19:37

» Problème avec Deepl
par Klaus Lun 15 Jan 2018 - 0:34

» Quelques nouvelles ...
par Jean Claude Ven 12 Jan 2018 - 22:40

» Renommer les instructions ITEM_... ?
par Jicehel Ven 12 Jan 2018 - 18:56

» Ludothèque Panoramic
par jjn4 Ven 12 Jan 2018 - 18:11

» sous-programmes et fonctions
par Jack Ven 12 Jan 2018 - 17:51

» Mah-Jong français
par Jean Claude Jeu 11 Jan 2018 - 22:15

» panoramic 0.9.28
par gigi75 Ven 5 Jan 2018 - 14:06

» Un jeu qui va vous énerver!
par Jean Claude Jeu 4 Jan 2018 - 22:05

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Janvier 2018
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
293031    
CalendrierCalendrier

Partagez | 
 

 access violation et grid

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

avatar

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

MessageSujet: access violation et grid   Lun 15 Déc 2014 - 13:59

Je n'ai pas posté ce sujet dans les bugs car je pense que çà n'en ai pas un.
C'est une astuce pour contourner le problème décrit ci-dessous.

Je suis entrain de mettre au point un programme qui utilise un GRID de 10 colonnes et 111 lignes.
J'ai fait une SUB qui remplit les cellules du grid de la manière suivante:
Code:

SUB remplie_grid()
 lig%=1:' pour commencer l'affichage en ligne 2 du grid
 Clear Dlist1%:file_load Dlist1%,"fichier_X"
  for n%=1 to count(Dlist1%)
     lig%=lig%=+1
     a$=item_read$(Dlist1%,n%):' extrait chaque ligne du fichier
     EXPLODE(a$): ' 17 éléments par ligne (dont 10 qui doivent être affichés)
     grid_write grid%,lig%,2,element$(1)
     grid_write grid%,lig%,3,element$(2)
   ' et ainsi de suite pour les dix colonnes  
' ajoutez ici WAIT 10 et plus de problème
  next n%
END_SUB

Important: Une fois l'affichage fait, le programme attend un clic dans une cellule pour faire autre chose...

J'ai mis longtemps à trouver pourquoi cette SUB me déclenchait un "Access Violation......" de manière aléatoire au passage dans la sub (si, et seulement si, l'utilisateur à fait le click décrit ci-dessus). Ce qui n'empêchait pas le programme de tourner correctement, après avoir validé le message d'erreur.
Je me suis dit que l'affichage dans les cellules était pris de vitesse par l'exécution ???

La solution: j'ai insérer un WAIT 10 (car 5 était insuffisant) juste avant NEXT n%. Et plus de vilain message !

Voilà je voulais partager l'astuce avec vous, pour le cas où....

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

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

MessageSujet: Re: access violation et grid   Lun 15 Déc 2014 - 14:29

Et si tu essayais de de remplacer le "WAIT 10" par "DISPLAY" ? Cela devrait permettre à Panoramkic de finir les affichages... Est-ce que ça fait le même effet ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Jean Claude

avatar

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

MessageSujet: Re: access violation et grid   Lun 15 Déc 2014 - 15:21

Bonne idée Klaus, j'ais fait l'essai, mais ce n'est pas parfait.

Cela améliore les choses, mais le message "Access Violation" arrive encore, mais moins souvent.

Comme je l'ais expliqué plus haut, un WAIT 5 ne suffit pas il faut un WAIT 10.
De plus, il me semble que Jack avait précisé que DISPLAY n'était rien d'autre qu'un WAIT 1, mais je n'arrive pas à retrouver le sujet sur le forum.

Je précise que c'est valable pour ma configuration (Processeur I3), pas certain que l'on puisse recréer le problème sur une autre configuration.
Je pense que le problème est lié à la vitesse d'exécution du PC, mais je n'en suis pas certain.
Pour arriver à recréer le "bug" il faut que dans la boucle FOR/NEXT il y ai un traitement assez conséquent (dans mon cas 17 éléments X environ 90 lignes d'un fichier = 1530 traitements à faire).
Donc, selon moi, il faut adapter la valeur de WAIT suivant la configuration du PC et le nombre d'éléments à traiter. Mais je ne suis pas très affirmatif, c'est mon intuition.

J'aimerais savoir ce que Jack en pense.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: access violation et grid   Lun 15 Déc 2014 - 15:52

Essaye Jean-Claude de mettre dans le sous-programme de réception d'un on_click ce que je pais maintenant .
Je mets en début:
repeat: wait 100: until scancode = 0

C'est à dire que la procédure démarre après le relâchement  de la souris. Depuis que je procède ainsi, je n'ai pratiquement plus de problème.
Revenir en haut Aller en bas
Jean Claude

avatar

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

MessageSujet: Re: access violation et grid   Lun 15 Déc 2014 - 19:57

Merci Cosmos, j'ai essayé mais çà ne marche pas non plus.

Dans mon programme, le on_click sur le grid est désactivé par off_click jusqu’à la fin du traitement du click précédent. Ce n'est donc pas un problème de click.

La solution WAIT 10 convient parfaitement (seulement  à l'exécutable, pas avec l'éditeur) et ne ralenti pas trop l'affichage.

Ce que j'ai omis de dire, dans mon premier poste, c'est que entre le on_click sur le grid et la SUB d'affichage, il y un tas de contrôles sur le fichier et un enregistrement de celui-ci. Tout çà est assez lourd (environ une seconde de traitement avant l'affichage lui-même)

Merci quand même, car ton tuyau peut servir pour d'autres cas.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: access violation et grid   

Revenir en haut Aller en bas
 
access violation et grid
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Petit exercice autout du GRID
» IF et GRID
» Comment se débarasser des Rootkit zero access et du trojan ? [résolu]
» sauvegarde des grid
» Fenêtres qui s'ouvrent toutes seules sur internet sous IE et Mozzilla

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: