这段代码尝试将4个标签设置为周x,周x + 1,周x + 2和周x + 3,但是在使用addDays(7)更新时失败,我只得到周x,周x,周x和周x。有人看到错误了吗?
ui->setupUi(this);
QDate fecha=QDate::currentDate();
int pr=fecha.weekNumber();
int year=fecha.year();
ui->lab1->setText("Week "+ QString::number(pr) + "\n" + " Year " +QString::number(year));
ui->lab5->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
fecha.addDays(7);
pr=fecha.weekNumber();
year=fecha.year();
ui->lab2->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
ui->lab6->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
fecha.addDays(7);
pr=fecha.weekNumber();
year=fecha.year();
ui->lab3->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
ui->lab7->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
fecha.addDays(7);
pr=fecha.weekNumber();
year=fecha.year();
ui->lab4->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
ui->lab8->setText("Week "+ QString::number(pr) + "\n" + "Year " +QString::number(year));
谢谢。
最佳答案
addDays()
函数返回修改了时间的对象,即它不累积在初始对象中。
您必须重新分配返回变量的内容:
fecha = fecha.addDays(7);
关于c++ - 为什么addDays不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43985165/