Calcul de durée sous QT [Résolu]

Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 13:08 - Dernière réponse :
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 16:53
Bonsoir,
je suis débutante sur QT et je cherche à récupérer la durée(différence entre 2 dates); Pour ceci,j'ai insérée 2 objets(date/time edit)grace à QTdesigner et que j'ai réspéctivement nommé:dateEdit,et dateEdit_2
que je voudrais stockée dans une bdd,j'éssaie d'insérer dans une table contrat ces données ke j'ai récupérée de mes qlineedit:(je travaille sous Access)

QSqlQuery  q;
req="INSERT INTO contrat (CIN,date départ,date retour,prix,matricule) VALUES ('"+ui->cINLineEdit->text()+"','"+ui->dateEdit->text() +"','"+ui->dateEdit_2->text()+"','"+ui->prixPayerLineEdit->text()+"','"+ui->matricule->text() +"')";
 q.exec(req);



ensuite je voudrais récupérer les 2 champs dateEdit etdateEdit_2 pour calculer la durée
j'ai éssayé ceci mais ça plante :s:s

QDateTime T1;
T1= ui->dateEdit->textFromDateTime();



il m'affiche une érreur du type:
No matching function for call to 'QDateEdit::textFromDateTime'

Voila merci de répondre
Afficher la suite 

Votre réponse

14 réponses

Meilleure réponse
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 16:30
3
Merci
C bon ça compile
Merci pour ton aide

      QDateTime T1=ui->dateEdit->dateTime();
         QDateTime T2=ui->dateEdit->dateTime();

         T1.daysTo(T2);



comme ça je récupère la durée en jours :)

Merci oum87 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de oum87
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 15:02
0
Merci
Hello,
Je ne comprend pas trop le lien entre ton histoire de calcul de "différence de date" (intervalle,quoi ) et ta bdd.
Dans tous les cas:
- QDateEdit::dateTime te permet de récupérer la date d'un QDateEdit
- QDateTime::secsTo() te permet de calculer le nombre de secondes entre 2 dates

@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 15:39
0
Merci
Salut,

Au fait je voudrais insérer mes dates dans une base de donnée Access et puis calculer la durée(l'intervalle :))

J'ai refait ce code
QDateEdit::QDateTimeEdit T1;
     T1= ui->dateEdit->textFromDateTime();



mais il me réenvoie toujours la méme érreur

No matching function for call to 'QDateEdit::textFromDateTime'
Commenter la réponse de oum87
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 15:52
0
Merci
Pourquoi passer par un QDateTimeEdit?
De plus, la méthode textFromDateTime() est protected, donc non accessible.
Si tu veux avoir la string correspondant à la date courante du QDateEdit, il faut plutôt faire:
QString dateString = tonDateEdit.dateTime.toString(tonFormat)

La doc

@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 16:02
0
Merci
Merci pour la réponse seulement il ne reconnait pas le(toString) après le dateTime,j'ai alors éssayé le code suivant qui a l'air de fonctionner
QString dateString1 = ui->dateEdit->date().toString();
      QString dateString2 = ui->dateEdit_2->date().toString();




Maintenant comment je fais pour calculer la différence entre les 2 dates

Merciii de répondre
Commenter la réponse de oum87
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 16:11
0
Merci
Maintenant comment je fais pour calculer la différence entre les 2 dates

Tu regardes ma 1ère réponse?


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 16:12
0
Merci
Attention! Ne pas se baser sur les QString mais bien sur les QDateTime...


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 16:17
0
Merci
J'ai éssayé ce code mais ça marche pas:
QDateTime::secsTo(dateString1,dateString2);
Commenter la réponse de oum87
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 16:23
0
Merci
Avant d'essayer...si tu lisais la doc!
Normal que ça ne marche pas...Je te renvoie à la doc de la méthode
QDateTime::secsTo()

@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 16:24
0
Merci
Tu as en plus un exemple...tu devrais donc y arriver maintenant...


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 16:34
0
Merci
N'oublie pas de cliquer sur "Réponse Acceptée" pour fermer le sujet ...


@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 16:36
0
Merci
Stp je cherche à afficher la valeur de la durée dans un Qlineedit( ui->totalLineEdit)

j’essaie ce code ci mais il y'a un problème de conversion

int dur=  T1.daysTo(T2);


          ui->totalLineEdit->setText(dur);




Commenter la réponse de oum87
Messages postés
14227
Date d'inscription
lundi 11 juillet 2005
Dernière intervention
16 novembre 2018
- 31 janv. 2012 à 16:49
0
Merci
doc
Merci de lire la doc avant de poster...

@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Commenter la réponse de BunoCS
Messages postés
21
Date d'inscription
lundi 2 août 2010
Dernière intervention
23 janvier 2013
- 31 janv. 2012 à 16:53
0
Merci
Ok daccord,je vais y chercher avant merci en tt cas pour la durée
Commenter la réponse de oum87

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.