Comment Rechercher dans un item une valeur sur un TchecklistBox et comment impor
vieuxpere
Messages postés195Date d'inscriptionsamedi 3 janvier 2004StatutMembreDernière intervention17 décembre 2014
-
3 janv. 2004 à 03:48
vieuxpere
Messages postés195Date d'inscriptionsamedi 3 janvier 2004StatutMembreDernière intervention17 décembre 2014
-
3 janv. 2004 à 15:23
Bonjour,
J'ai deux questions qui me posent soucis depuis pas mal de temps, merci d'avance pour votre aide à les résoudrent.
Question 1
Comment rechercher dans un tchecklistbox une valeur dans un item ?
exemple :
if tchecklistbox1.checked[1]=true then tchecklistbox2.itemindex.count('valeur recherchée'):=true;
Hélas cette commande ne marche pas, merci de m'aider.
Question 2
Toujours dans un tchecklistbox, comment importer une partie d'un fichier ini, à savoir la partie groupe, mais sous un format spécifique (voir ci dessous).
La structure du fichier ini est le suivante :
[Valeurs]
01=GMoins d'un an|K33|0
02=GMoins d'un an|K34|0
03=GMoins d'un an|D40|0
04=GMoins d'un an|D41|0
05=GMoins d'un an|D42|0
06=GMoins d'un an|I11|0
07=GMoins d'un an|I12|0
08=GMoins d'un an|I13|0
09=GMoins d'un an|I14|0
10=GMoins d'un an|I15|0
12=GMoins d'un an|I17|0
13=GMoins d'un an|I18|0
14=GMoins d'un an|I19|0
15=GMoins d'un an|I20|0
16=GMoins d'un an|I21|0
17=GMoins d'un an|I22|0
18=GMoins d'un an|I23|0
19=GMoins d'un an|I25|0
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 3 janv. 2004 à 09:03
Merci de bien vouloir poser une seule question par post !
Question 1 : Comment rechercher dans un tchecklistbox une valeur dans un item ?
Utiliser la méthode IndexOf pour rechercher une correspondance exacte ou alors, faire appel à la fonction Pos pour rechercher une correspondance partielle (voir illustration dans le code ci-dessous).
L'exemple fourni pour cette question est confus. Pourriez-vous préciser ce que vous recherchez.
"Ce qui se conçoit bien s'énonce clairement et les mots pour le dire viennent aisément." 8-)
Question 2 : comment importer une partie d'un fichier ini...
Là, c'est un peu plus compliqué et voici le code commenté :
procedure TForm1.Button1Click(Sender: TObject);
var
Ini : TIniFile;
StrList : TStrings;
i: integer;
Nom, Temp : string;
const
IniName = 'VieuxPere.ini';
Sep = ','; //caractère séparateur des valeurs dans le fichier .ini
begin
StrList := TStringlist.Create;
try
Ini := TIniFile.Create(ExtractFilePath(Application.ExeName)+IniName);
try
Ini.ReadSectionValues('Groupes', StrList);
for i := 0 to StrList.Count - 1 do
begin
//nom de l'entrée du fichier ini
Nom := StrList.Names[i];
CheckListBox1.Items.Add(Nom);
//suite de valeurs séparées par des virgules
Temp := StrList.Values[Nom];
while Pos(Sep, Temp) <> 0 do
begin
//Caractères avant la première virgule
CheckListbox1.Items.Add(Copy(Temp, 1, Pos(Sep, Temp) - 1));
//supprimer les caractères jusqu'à la virgule comprise
Delete(Temp, 1, Pos(Sep, Temp));
end;
//copie de la dernière chaine ssi elle n'est pas vide !
//au cas où une virgule ne serait pas suivie d'une valeur
if Temp <> EmptyStr then
CheckListBox1.Items.Add(Temp);
end;
finally
Ini.Free;
end;
finally
StrList.Free;
end;
end;
Avec les commentaires, vous devriez vous en sortir. :)
Bon, ça fait la deuxième fois que je tape cette réponse à cause d'une erreur du serveur, alors j'arrête là !
May Delphi be with you