我有两个QDateEdit,分别是Date_dob和Date_doj。我使用如下所示的Qstring存储值。
QString str_dob(ui->DATE_dob->text());
QString str_doj(ui->DATE_doj->text());现在我想将其填充到ui->Date_道布和ui->Date_doj (在发生一些编辑事件之后)。我用过,
ui->DATE_dob->setText(s.at(2));
ui->DATE_doj->setText(s.at(5)); //where s is a string having data但是数据不会填充。
任何类型的建议都将非常感谢。提前感谢
发布于 2017-01-23 16:25:59
为了将QString转换为QDate,您可以使用QDate::fromString()。然后,您可以使用QDate::setDate(const QDate &date)在QDateEdit中设置日期。
希望能有所帮助。
发布于 2017-01-23 16:46:25
您使用了错误的方式进行转换。
QDate to QString
QString str_dob = ui->DATE_dob->toString("dd MM yyyy");在日期格式中,您应该指定它,否则您的对话将是默认格式。Known Format you can use
QString to QDate
if( ui->DATE_dob->setDate(QDate::fromString(str_dob,"dd MM yyyy").year()\
,QDate::fromString(str_dob,"dd MM yyyy").month()\
,QDate::fromString(str_dob,"dd MM yyyy").day()){
// Your Conversation Succes
}当QString to QDate时,你必须知道字符串中的日期格式,否则你的对话会失败,或者你得到的值是错误的。
示例:如果Qstring为: 19/12/2017,则格式为"dd/MM/yyyy“
https://stackoverflow.com/questions/41801410
复制相似问题