Comparar Fechas



  • Hola! He intentado compara fechas a partir de un QDateEdit sin exito, el codigo es el siguiente

    QString fecha_principio,fecha_fin;

    fecha_principio=ui->d_vdesde->text().trimmed();
    fecha_fin=ui->d_vhasta->text().trimmed();

    QDate Date_inicio = QDate::fromString(fecha_principio,"dd/MM/yyyy");
    QDate Date_fin = QDate::fromString(fecha_fin,"dd/MM/yyyy");

    if((Date_inicio==(Date_fin))||(Date_inicio.operator>(Date_fin)))

    { Mensaje de error si se cumple esta condicion}
    else
    {lo que necesito que haga}

    Nunca logro salir del mensaje de error independienteme lo que coloque en las fechas
    En la primera comparacion coloque == pero tambien he probado .operator==



  • @Coloman si usas QDateEdit el método date() devuelve un QDate directamente, no necesitarías la conversión.

    Hice un pequeño ejemplo con 2 QDateEdit y un QPushButton, cuando hago click en el botón se ejecuta este métdodo, y la comparación sale de acuerdo a lo esperado:

    void MainWindow::on_btnCompare_clicked() {
        ui->dateFrom->date();
        ui->dateTo->date();
    
        if (ui->dateFrom->date() >= ui->dateTo->date()) {
            qDebug() << "Not Ok: dateFrom >= dateTo";
        } else {
            qDebug() << "Ok: dateFrom < dateTo";
        }
    }
    

Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.