Soustraire Valeur TListView

Résolu
nabil351974 Messages postés 75 Date d'inscription mardi 18 décembre 2007 Statut Membre Dernière intervention 11 mars 2014 - Modifié par nabil351974 le 8/02/2014 à 21:36
nabil351974 Messages postés 75 Date d'inscription mardi 18 décembre 2007 Statut Membre Dernière intervention 11 mars 2014 - 10 févr. 2014 à 16:49
Bonsoir,

J'ai un TListview dans lequel il y a des Données qui représentent des temps(Time).
Je veux y soustraire des minutes et comparer l'heure avec l'heure système.
Voici mon code:

for i := 0 to 5 do

if (listview2.Items.Item[i].SubItems[0] - InttoStr(StrtoInt(ComboBox1.Text) div (1440)) ) = TimeToStr(Time) then begin
...
...



ça marche pas parc que :" listview2.Items.Item[i].SubItems[0]" est un string et on peut pas!
-"listview2.Items.Item[i].SubItems[0]" : je récupère la valeur.
- "ComboBox1.Text" : représente la valeur à soustraire.

Merci pour votre éventuelle aide.

NABIL1974

7 réponses

dubois77 Messages postés 675 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 19 février 2019 14
9 févr. 2014 à 08:51
Salut
Juste comme cela rapidos : essaie avec strtodate(listview2.Items.Item[i].SubItems[0] - strtodate( .....)
0
cs_yanb Messages postés 271 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 7 juillet 2022 14
9 févr. 2014 à 14:30
Salut,
ne connaissant pas les valeur exacte de chaque string pas facile, mais le code devrait plus ressembler à ca car string-integer effectivement ca marche pas
if TimeToStr(StrToInt(listview2.Items.Item[i].SubItems[0]) - (StrtoInt(ComboBox1.Text) div (1440))) = TimeToStr(Time) then begin

@+
0
nabil351974 Messages postés 75 Date d'inscription mardi 18 décembre 2007 Statut Membre Dernière intervention 11 mars 2014
Modifié par nabil351974 le 10/02/2014 à 07:15
Bonjour,
Merci pour vos réponses.
je sais que c'est un problème de conversion mais...
@ dubois77: ça marche pas.

@ cs_yanb:
- les valeurs du ListView sont changeantes : des valeurs temps:
ex: 05:15:55 ou 15:02:47 ou ...
quand je lance l'application, ça compile sans soucis, mais j'ai un msg d'erreur : "06:10:20" n'est pas une valeur correcte.
donc c'est la conversion.

@+

NABIL1974
0
dubois77 Messages postés 675 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 19 février 2019 14
10 févr. 2014 à 08:13
Peux tu donner le contenu exact de
- listview2.Items.Item[i].SubItems[0]
- ComboBox1.Text
çà permettrait de faire quelques essais
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_yanb Messages postés 271 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 7 juillet 2022 14
Modifié par cs_yanb le 10/02/2014 à 09:49
Salut,
comme le dit dubois77 il faudrait le contenu car on ne peut pas donner un code qui fonctionne à coup sur...
Par déduction je suppose que Combobox1.Text est le nombre de jour et que tu le divises pour en avoir les minutes par jour...
if TimeToStr(StrToTime(listview2.Items.Item[i].SubItems[0])-(StrToInt(ComboBox1.Text) / 1440)) = TimeToStr(Time) then
Mais il va peut-être falloir aller plus loin avec du DecodeTime, DecodeDate, IncMinute, DateUtils etc...c'est pour cela que nous donner le contenu à toute son importance ! Car je pense que le code actuel ne correspond pas à ce que tu souhaites faire et au résultat que tu veux obtenir...
@+
0
nabil351974 Messages postés 75 Date d'inscription mardi 18 décembre 2007 Statut Membre Dernière intervention 11 mars 2014
10 févr. 2014 à 16:26
Bonjour ,

Les gars, listview2 n'a pas de contenu exact.
il y a 6 lignes et chaque ligne a une valeur temps: heure , minutes ,secondes.
Son contenu change chaque jour.
Pour la Combobox1, elle contient les minutes que je soustraire.L'utilisateur peut les saisir.
Par exemple: 5. donc on soustrait 5 minutes d'une ligne de la"listview2.

@+
0
nabil351974 Messages postés 75 Date d'inscription mardi 18 décembre 2007 Statut Membre Dernière intervention 11 mars 2014
10 févr. 2014 à 16:49
Rebonjour,

Ecouter les gars, je viens juste de rentrer chez-moi et j'ai testé le code cs_yanb, il marche!!
Merci à tout les deux d'être penché sur mon soucis.
A la prochaine peut-être.

Encore Merci!
0
Rejoignez-nous