
void UiMainWindow::slotClockTimeout()
{
QString str
QDate date = QDate::currentDate()
QTime time = QTime::currentTime()
str = QString("%1-%2-%3 %4").arg(date.year()).arg(date.month()).arg(date.day()).arg(time.toString())
str = str.left(str.length() - 3)//去除秒钟的显示
ui->labelClock->setText(str)//显示时间在label上。
}
第一步,创建一个dateTimeEdit,第二步,将其connect到一个函数上,第三部,提取它的QDateTime,然后利用下面的函数就可以了,它是基于shell命令的:void moreidDialog::slot_save_time_key()
{
QDateTime time
QString str = txt_time->text()
//判断格式是否正确
if (str.count(".") != 4)
{
txt_time->setText(tr("ge shi cuo wu"))
return
}
int i = 0,j = 0
i = str.indexOf(".")
QString year = str.mid(0,i)
j = str.indexOf(".",i + 1)
QString month = str.mid(i + 1,j - i - 1)
i = j
j = str.indexOf(".",i + 1)
QString day = str.mid(i + 1,j - i - 1)
i = j
j = str.indexOf(".",i + 1)
QString hour = str.mid(i + 1,j - i - 1)
i = j
j = str.indexOf(".",i + 1)
QString min = str.mid(i + 1,j - i - 1)
bool ok = false
year.toInt(&ok)
if (ok == false)
{
txt_time->setText(tr("ge shi cuo wu"))
return
}
month.toInt(&ok)
if (ok == false)
{
txt_time->setText(tr("ge shi cuo wu"))
return
}
day.toInt(&ok)
if (ok == false)
{
txt_time->setText(tr("ge shi cuo wu"))
return
}
hour.toInt(&ok)
if (ok == false)
{
txt_time->setText(tr("ge shi cuo wu"))
return
}
min.toInt(&ok)
if (ok == false)
{
txt_time->setText(tr("ge shi cuo wu"))
return
}
str = "date -s " + month + "/" + day + "/" + year
system(str.toLatin1().data())
str = "date -s " + hour + ":" + min + ":" + "00"
system(str.toLatin1().data())
//强制写入到CMOS
system("clock -w")
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)