IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

Composer une clé de recherche pour stringgrid [Lazarus]


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2003
    Messages : 30
    Par défaut Composer une clé de recherche pour stringgrid
    Bonjour à tous et à toutes.

    Pour des besoins de travail, je constitue une clé de recherche dans un TStringGrid.

    Cette clé est constituée à partir de nombre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    strgrid1.Cells[0,j]:= floattostr(ceil(latpta/maxsize)-1)
                                 + '_' + floattostr(ceil(lonpta/maxsize)-1)
                                 +'!' +inttostr(H);
    latpta, lonpta, maxsize numérique et H un index.

    Le problème est qu'en alphanumérique, 0_0_2 est après 0_0_19, ce qui donne
    0_0!1
    0_0!10
    0_0!11
    ....
    0_0!19
    0_0!2
    0_0!20

    Pour avoir un tri juste, il faudrait avoir
    0_0!01
    0_0!02
    ....
    0_0!09
    0_0!10
    0_0!11
    etc... ==> donc avoir l'index tour sur le même nombre de digit, avec 0 avant.

    Alors, comment faire cela de façon simple ?

  2. #2
    Membre émérite
    Avatar de chris37
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juillet 2007
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 378
    Par défaut
    Bonsoir,

    La fonction formatFloat permet de régler l'ajout du 0
    ShowMessage(FormatFloat('00', 1)); //Affiche 01
    Cordialement,
    Chris

  3. #3
    Membre averti
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2003
    Messages : 30
    Par défaut Une solution possible
    Merci chris37 pour cette possibilité.

    J'ai moi-même contourné le problème avec un simple division par 1000, ce qui me permet d'avoir le bon classement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    strgrid1.Cells[0,j]:= floattostr(ceil(latpta/maxsize)-1)
                                 + '_' + floattostr(ceil(lonpta/maxsize)-1)
                                 +'!' +inttostr(H/1000);
    ce qui donne :

    0_0_0.001
    0_0_0.002
    ....
    0_0_0.010
    0_0_0.011
    etc....

    La solution de Chris37 est bien plus intéressante et marche tres bien
    0_0_0001
    0_0_0002
    0_0_0003
    ....
    etc

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Recherche des composants de lmd Tools gratuits pour Delphi 7
    Par 21247692 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 20/07/2008, 17h39
  2. Utiliser des champs de recherche pour une valeur calculée.
    Par MasterJul dans le forum SharePoint
    Réponses: 0
    Dernier message: 08/02/2008, 12h47
  3. Une barre de recherche Qt pour Firefox
    Par Alp dans le forum Qt
    Réponses: 3
    Dernier message: 07/02/2008, 18h37
  4. Composants intéressant pour StringGrid (Composant NextGrid)
    Par ero-sennin dans le forum Composants VCL
    Réponses: 10
    Dernier message: 15/01/2008, 12h15
  5. commande de recherche pour une base de donnée
    Par bullrot dans le forum C++Builder
    Réponses: 6
    Dernier message: 22/10/2007, 19h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo