Composant liste de strings avec champs

Soyez le premier à donner votre avis sur cette source.

Vue 5 340 fois - Téléchargée 693 fois

Description

TRecordsList est une liste de strings, chaque string comportant une ou plusieurs "sous-chaînes" (champs).
Le composant est dérivé de TList et non pas de TStrings, ce qui permet de stocker dans un seul champ un texte avec retours-chariot.
Exemple : MaListe.Add([Edit1.Text, Memo1.Text]);
La liste peut être triée de façon maintenue sur un ou plusieurs champs.
Fonctions de recherche par clés.
Petite démo jointe et présentation du composant dans un fichier .rtf

Merci d'avance pour vos commentaires.

Thierry

Conclusion :


Utilité :
- sauvegarder dans un seul fichier les saisies de données par l'utilisateur du programme.
- simple BD "maison".

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
2106
Date d'inscription
mardi 10 décembre 2002
Statut
Modérateur
Dernière intervention
15 décembre 2014
5
Arg, je voulais tester ton compo cette semaine mais il n' y aura pas moyen vu que demain est un jour férié au Portugal et que je m' en vais à la plage loin de Delphi et d' Internet! Et comme hier je me devais de corriger mon propre compo ...

D' après les fonctionnalités, ce compo semble très interessant.
Lundi je te donnerai mon avis ^^

A+

PS: tu as vu la source de Kenavo et la mienne sur les sous-chaines? (fait une cherche avec "chouchen")
Messages postés
3817
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
16 septembre 2020
34
ha ha ha ... justement je lisais ton premier commentaire et
je me demandais ce que tu avais fumé ... mdr

Mais tu as quand même raison en disant que cette version est plus rapide que la première de mes propositions

Mais en ce qui concerne la deuxième .... heu ... aucune chance ^^
Messages postés
418
Date d'inscription
mardi 3 janvier 2006
Statut
Membre
Dernière intervention
26 novembre 2013
3
Salut Cirec,
désolé, je n'avais pas vu ton dernier commentaire avant d'ajouter le mien.
A +
Thierry
Messages postés
418
Date d'inscription
mardi 3 janvier 2006
Statut
Membre
Dernière intervention
26 novembre 2013
3
Bonjour Delphiphi et merci.

Pour le problème de PosEx, ceci doit être plus rapide que la fonction trouvée sur le site renseigné par Cirec.

function PosEx(const SubStr, S: string; Offset: Cardinal = 1): Integer;
begin
if Offset <= 1 then Result:= Pos(SubStr, S)
else
begin
Result:= Pos(SubStr, Copy(S, Offset, Length(S)));
if Result > 0 then Result:= Result + Offset -1;
end;
end;

En D6, tu auras peut-être aussi un problème avec TFormatSettings. Si c'est le cas, tu peux virer dans MainFrm.pas tout ce qui concerne FS. Cela ne change pas grand chose à la démo.

A +
Thierry
Messages postés
3817
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
16 septembre 2020
34
tu as beaucoup de chance :

j'ai trouvé l'implémentation d'origine (qui est la même que celle fournit avec Delphi) de Aleksandr Sharahov:
http://delphi.newswhat.com/geoxml/forumhistorythread?groupname=borland.public.delphi.language.basm&messageid=4241ce68@newsgroups.borland.com

Tu verras il y en a plusieurs (c'est l'avant dernière, qu'il faut prendre) elle est nommé : PosEx_Sha_IA32_4_a

Tu recopies le code et tu renommes la fonction en PosEx et voili voilou tu as la même que nous ^^

pas belle la vie ^^
Afficher les 14 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.