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.
Problème avec les StringList. Emptypar Klaus Ven 17 Mai 2024 - 14:02

» item_index(résolu)
Problème avec les StringList. Emptypar jjn4 Mar 14 Mai 2024 - 19:38

» Bataille terrestre
Problème avec les StringList. Emptypar jjn4 Lun 13 Mai 2024 - 15:01

» SineCube
Problème avec les StringList. Emptypar Marc Sam 11 Mai 2024 - 12:38

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Problème avec les StringList. Emptypar Marc Sam 11 Mai 2024 - 12:22

» Philharmusique
Problème avec les StringList. Emptypar jjn4 Ven 10 Mai 2024 - 13:58

» PANORAMIC V 1
Problème avec les StringList. Emptypar papydall Jeu 9 Mai 2024 - 3:22

» select intégrés [résolu]
Problème avec les StringList. Emptypar jjn4 Mer 8 Mai 2024 - 17:00

» number_mouse_up
Problème avec les StringList. Emptypar jjn4 Mer 8 Mai 2024 - 11:59

» Aide de PANORAMIC
Problème avec les StringList. Emptypar jjn4 Mer 8 Mai 2024 - 11:16

» trop de fichiers en cours
Problème avec les StringList. Emptypar lepetitmarocain Mer 8 Mai 2024 - 10:43

» Je teste PANORAMIC V 1 beta 1
Problème avec les StringList. Emptypar papydall Mer 8 Mai 2024 - 4:17

» bouton dans autre form que 0(résolu)
Problème avec les StringList. Emptypar leclode Lun 6 Mai 2024 - 13:59

» KGF_dll - nouvelles versions
Problème avec les StringList. Emptypar Klaus Lun 6 Mai 2024 - 11:41

» @Jack
Problème avec les StringList. 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
-39%
Le deal à ne pas rater :
Pack Home Cinéma Magnat Monitor : Ampli DENON AVR-X2800H, Enceinte ...
1190 € 1950 €
Voir le deal

 

 Problème avec les StringList.

Aller en bas 
2 participants
AuteurMessage
Pedro

Pedro


Nombre de messages : 1561
Date d'inscription : 19/01/2014

Problème avec les StringList. Empty
MessageSujet: Problème avec les StringList.   Problème avec les StringList. EmptyDim 19 Avr 2015 - 16:33

Bonjour.

@Klaus.

Je rencontre un problème avec la recherche d'éléments dans une StringList.

Code:
dim element$, fichier$, res%, temporaire$

dll_on "kgf.dll"

fichier$="test.txt"
res%=dll_call2("CreateStringList",1,1)
if res%=0 then res%=dll_call2("LoadStringList",1,adr(fichier$))

list 2
sort_on 2
file_load 2,fichier$

element$="acheté#"

temporaire$=string$(255," ")
res%=abs(dll_call3("SearchStringList",1,adr(element$),adr(temporaire$)))
message str$(res%)+" "+trim$(temporaire$)

' SearchStringList fournit la ligne où devrait apparaître element$.
' Ex: 'jolie;' -> fournit la ligne 'joliment;'.
if left$(temporaire$,len(element$))<>element$ then res%=0

' message trim$(temporaire$)+" "+str$(res%)

res%=dll_call3("SearchListBox",handle(2),0,adr(element$))
message str$(res%)+" "+item_read$(2,res%)

dll_off
terminate

Voici le contenu du fichier 'test.txt':

achetas#929;3;2
achètas#929;6;2
achetâtes#929;3;5
achète#929;1;1
achète#929;1;3
achete#929;2;2
acheté#929;9;1
acheté#929;9;2
acheté#929;9;3
acheté#929;9;4
acheté#929;9;5
acheté#929;9;6

Le résultat donné par SearchStringList n'est pas correct, contrairement à celui de l'objet List.

Merci de ton aide.
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec les StringList. Empty
MessageSujet: Re: Problème avec les StringList.   Problème avec les StringList. EmptyDim 19 Avr 2015 - 19:13

Crée ta StringList de la manière suivante:
Code:
res%=dll_call2("CreateStringList",1,2)
et il trouvera correctement "acheté". Bien que pas dans la même position que dans l'objet LIST, le bon élément est bel et bien trouvé.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Pedro

Pedro


Nombre de messages : 1561
Date d'inscription : 19/01/2014

Problème avec les StringList. Empty
MessageSujet: Problème avec les StringList.   Problème avec les StringList. EmptyDim 19 Avr 2015 - 20:45

Bonsoir.

OK, merci Klaus.

Mais maintenant, j'obtiens l'erreur 'EStringListError' dans le module kgf.dll !!

Merci de ton aide.
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec les StringList. Empty
MessageSujet: Re: Problème avec les StringList.   Problème avec les StringList. EmptyDim 19 Avr 2015 - 21:14

Euh... avec le code que tu as posté ci-dessus ? Pas chez moi ! J'ai simplement changé le dernier paramètre de la fonction CreateStringList ainsi que le nom du fichier (car test.txt existe chez moi...):
Code:
dim element$, fichier$, res%, temporaire$

dll_on "kgf.dll"

fichier$="test_pedro.txt"
res%=dll_call2("CreateStringList",1,2) : ' <============= modification ici !
if res%=0 then res%=dll_call2("LoadStringList",1,adr(fichier$))

list 2
sort_on 2
file_load 2,fichier$

element$="acheté#"

temporaire$=string$(255," ")
res%=abs(dll_call3("SearchStringList",1,adr(element$),adr(temporaire$)))
message str$(res%)+" "+trim$(temporaire$)

' SearchStringList fournit la ligne où devrait apparaître element$.
' Ex: 'jolie;' -> fournit la ligne 'joliment;'.
if left$(temporaire$,len(element$))<>element$ then res%=0

' message trim$(temporaire$)+" "+str$(res%)

res%=dll_call3("SearchListBox",handle(2),0,adr(element$))
message str$(res%)+" "+item_read$(2,res%)

dll_off
terminate

Tout marche bien...
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Pedro

Pedro


Nombre de messages : 1561
Date d'inscription : 19/01/2014

Problème avec les StringList. Empty
MessageSujet: Problème avec les StringList.   Problème avec les StringList. EmptyDim 19 Avr 2015 - 21:30

Bonsoir.

Non, l'erreur apparaît dans mon programme principal, en utilisant le même code !!

Merci de ton aide.
Revenir en haut Aller en bas
Klaus

Klaus


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

Problème avec les StringList. Empty
MessageSujet: Re: Problème avec les StringList.   Problème avec les StringList. EmptyDim 19 Avr 2015 - 22:25

Voici les cas où une telle erreur se produit:
Citation :

1. There is not enough memory to expand the list.
2. The list tried to grow beyond its maximal capacity.
3. A non-existent element of the list was referenced. (i.e. the list index was out of bounds)
4. An attempt was made to add a duplicate entry to a TStringList when TStringList.Duplicates is False.

Je pense qu'on peut exclure les cas 1 et 2. C'est probablement le cas 3 (tentative d'accès à un élément non existant (indice 0 ou plus grand que le nombre d'enregistrements dans la StringList).

Et, la doc dit:
Citation :
The default value for the Duplicates property is dupIgnore
Et c'est ce qui se passe: je ne spécifie rien de particulier, à la création de la StringList, sur le comportement en cas de doublon. Donc, tout doublon est ignoré. Donc, le cas 4 ne peut se produire, puisqu'il n'y aura pas de doublons.

En résumé, c'est le cas 3: tu accèdes un enregistrement inexistant, ou tu passes un indexe 0... Et c'est donc probablement la fonction ReadStringList qui provoque cette erreur, ou DeleteStringListItem. A moins que tu utilises InsertStringListItem sur une liste triée ce qui est interdit - il faut utiliser AddStringListItem pour ajouter un élément à une StringList triée. La fonction ReplaceStringListItem est également problématique sur une liste triée - il vaut mieux supprimer par DeleteStringListItem, puis ajouter par AddStringListItem (comme en Panoramic, d'ailleurs !).

La prochaine fois, essaie de localiser l'endroit où se produit l'erreur (en plaçant des commandes MESSAGE à des endroits stratégiques du code). Lorsque tu as trouvé l'endroit en question, affiche par MESSAGE l'ensemble des paramètres donnés à la fonction, juste avant d'appeler celle-ci. Ainsi, tu auras une vue nettement plus précise que simplement "ça ne marche pas"... Smile Smile Smile
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





Problème avec les StringList. Empty
MessageSujet: Re: Problème avec les StringList.   Problème avec les StringList. Empty

Revenir en haut Aller en bas
 
Problème avec les StringList.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Problème avec les StringList.
» Problème avec StringList.
» Problème avec les StringList.
» Problème avec un objet StringList.
» Problème avec l'objet StringList.

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: