begin process at 2010 09 09 10:30:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Système

 > 

Fichier & Disque

 > 

Delphi ordonner combobox


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Delphi ordonner combobox

mercredi 3 juin 2009 à 16:09:28 | Delphi ordonner combobox

floppy41

Bonjour à tous,
j'explique mon probleme :
j'ai une liste déroulante générée automatiquement.
Cette derniere contient des dates :
01/04/09
05/06/09 etc...
Le probleme est que Delphi les ordonnent avec le premier chiffre qu'il rencontre :
ainsi j'obtiens
01/04/09
05/04/09
06/04/08
07/04/09

je voudrais donc savoir si il existait un moyen de la triée par années dans un premier temps puis par mois, comme la logique le voudrait.

Par avance Merci.
jeudi 4 juin 2009 à 09:06:36 | Re : Delphi ordonner combobox

JulioDelphi

Membre Club Administrateur CodeS-SourceS
salut
A toi de trier ta liste avant de nourrir la combobox
L'autre solution serait de choper les dates "à l'envers" : 09/04/01
a+
jeudi 4 juin 2009 à 11:09:51 | Re : Delphi ordonner combobox

cantador

Membre Club
bonjour,

dates "à l'envers" : 09/04/01

09/04/01
88/04/05

cantador
jeudi 4 juin 2009 à 11:15:23 | Re : Delphi ordonner combobox

floppy41

Extraire les dates à l'envers de m'intéresse pas puisquequ'à la base avant d'envoyer ces dates dans la liste déroulante je les converties déjà au format FR
Avant d'être dans la combobox elles sont sous cette forme:
090426 (26 avril 2009)
puis je les transforme pour plus de lisibilité pour l'utilisateur en
26/04/09

Une autre idée?

jeudi 4 juin 2009 à 11:36:14 | Re : Delphi ordonner combobox

cirec

Membre Club Administrateur CodeS-SourceS
Salut,

eh ben ... t'as tout ce qu'il faut ... il suffit de le faire dans le bon sens:

1) tu récupères les dates sans en changer le format
2) tu tries la liste (StringList .Sorted := True)
3) tu modifies le format pour avoir une date "Fr"
4) et tu renvois la liste au ComboBox

voilà c'est tout ....

 
@+
Cirec

jeudi 4 juin 2009 à 12:14:00 | Re : Delphi ordonner combobox

f0xi

Membre Club Administrateur CodeS-SourceS


ce qui donne :



type
  TDateOrder = (doDMY, doDYM, doYMD, doYDM, doMYD, doMDY);

procedure ConvertDates(String: TStrings; const InOrder,OutOrder: TDateOrder);
var N : integer;
    ST, Dy, Mo, Ye: String;
begin
  Strings.BeginUpdate;
  try
    for N := 0 to Strings.Count-1 do
    begin
      if length(Strings[N]) = 6 then
      begin
        ST := Strings[N];
        case InOrder of
          doDMY : begin Dy := ST[1]+ST[2]; Mo := ST[3]+ST[4]; Ye := ST[5]+ST[6]; end;
          doDYM : begin Dy := ST[1]+ST[2]; Mo := ST[5]+ST[6]; Ye := ST[3]+ST[4]; end;
          doYMD : begin Dy := ST[5]+ST[6]; Mo := ST[3]+ST[4]; Ye := ST[1]+ST[2]; end;
          doYDM : begin Dy := ST[3]+ST[4]; Mo := ST[5]+ST[6]; Ye := ST[1]+ST[2]; end;
          doMYD : begin Dy := ST[5]+ST[6]; Mo := ST[1]+ST[2]; Ye := ST[3]+ST[4]; end;
          doMDY : begin Dy := ST[1]+ST[2]; Mo := ST[1]+ST[2]; Ye := ST[5]+ST[6]; end;
        end;
 
        case OutOrder of
          doDMY :Strings[N] := Dy+'/'+Mo+'/'+Ye;
          doDYM :Strings[N] := Dy+'/'+Ye+'/'+Mo;
          doYMD :Strings[N] := Ye+'/'+Mo+'/'+Dy;
          doYDM :Strings[N] := Ye+'/'+Dy+'/'+Mo;
          doMYD :Strings[N] := Mo+'/'+Ye+'/'+Dy;
          doMDY :Strings[N] := Mo+'/'+Dy+'/'+Ye;
        end;

      end;
    end;
  finally
    Strings.EndUpdate;
  end;
end;

procedure Form1.EvenementQuelconque(Sender: TObject);
var TSL : TStringList;
begin
  TSL := TStringList.Create;
  try
    TSL.LoadFromFile('dates.txt');
    TSL.Sorted := true;
    TSL.Sorted := false;
    ConvertDates(TSL, doYMD, doDMY);
    ComboBox1.Items.Assign(TSL);
   finally
    TSL.Free;
  end;
end;




jeudi 4 juin 2009 à 16:06:20 | Re : Delphi ordonner combobox

JulioDelphi

Membre Club Administrateur CodeS-SourceS
Il est fort ce foxi, il est fort ... ^^
jeudi 4 juin 2009 à 16:06:45 | Re : Delphi ordonner combobox

floppy41

Pas tout compris au message de f0xi... en plus Delphi en veut pas...

Cirec, tu disais de faire un stringlist.sorted

seulement j'ai toutes mes dates dans un tableau de type string

et les commandes la_liste_date.sorted ne fonctionne pas étant donné que ça s'applique a des objet et pas a des tableaux.

Une autre idée? Merci 

jeudi 4 juin 2009 à 16:17:17 | Re : Delphi ordonner combobox

JulioDelphi

Membre Club Administrateur CodeS-SourceS
Une autre idée ? Reessaie la soluce de foxi qui est 100% bonne !
"Delphi en veut pas" si tu veux mon avis, le problème se situe entre le clavier et la chaise ...
jeudi 4 juin 2009 à 16:20:49 | Re : Delphi ordonner combobox

floppy41

Oh oh la touche d'humour, j'ai jamais dit que j'étais un professionnel... et j'suis tout à fait d'accord, le problème est bien la, seulement j'ai beau faire un vulgaire copier coller (en adpatant biensur...) il refuse de me le compiler.
Alors pourriez vous s'il vous plait m'expliquer ce qu'il faut faire (faut rajouter un truc dans les uses?).
Merci.

1 2

Cette discussion est classée dans : combobox, probleme, delphi, premier, ordonner


Répondre à ce message

Sujets en rapport avec ce message

Delphi probleme sur un DBlookup combobox avec validation par entrée [ par maxjp83 ] Bonjour, Language Delphi A l'exécution, lorsque je ferme un DBlookupComboBox en appuyant sur Entrée, le bitbtn OK s'active et j'ai un message d'erre rendre delphi comme le premier jours d'installation [ par zakidao ] salut a tout les programmeur delphi je voudrais Juste vous poser une petite question tout béte C'est Comment jerend mon delphi avec tout ses option et Probleme avec delphi [ par yass22 ] J'ai un exemple en delphi,et et quand j'ouvre le fichier(. dpr) un message apparait : [i][/i](Classe non trouvée.Ignorer l'erreur et continuer? ceci p Probleme installation Delphi 7 Seconde edition [ par kamikaze103 ] Bonjour , Voila je poste sur  votre forum en esperant trouver une réponse a mon problème que je n'arrive pas a résoudre  , je vous explique .J'ai inst delphi + langue arabe = impossible d'inintialisé BDE [ par djilone ] quand je met la langue d'entrée de mon pc [color=red]arabe[/color] le delphi me pose un probleme avec le module base de donnée il m'affiche cette erre Rave Report + Delphi 7 : Probleme de propriété des colonnes [ par iverson433 ] Bonjour,Etant en stage de seconde année je suis amené à developper sous delphi. Venant de vb, j'ai reussi à me débrouiller , mais un problème se pose Installation d'une application utilisation le BDE [ par reysoft ] bonjourj'ai developpé une application de base de donnee sous delphi avec 5 table paradox et 1 alias et le probleme que je peux excuter cette applicati Connexion à mysql via delphi [ par armstrong0000 ] Bonjour a tous,Donc mon probleme est tout simple j'utilise delphi 7 et je voudrai me connecter a une base de données mysql à l'aide de DBExpress, mais


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales