QT5.14入门教程GUI(七)第7个QT程序-日期-时间-日历控件QDate-QTime-QCalendar
1、新建项目,改名称7DateTime;
2、改类名
3、打开UI界面,双击;
4、找到左侧,按钮,如下;单击,拖到右侧界面中释放;
1个 Time Edit 1个Date Edit 1个 Date/Time Edit
3个Line Edit
1个 Calendar Widget
5、再添加几个Label 4个 Button 1个Group Box
6、布局如下;
7、在头文件中,dialog.h中,添加函数声明,2个;
8、在dialog.cpp中,添加槽链接,2个;
QObject::connect(ui->btnGetTime_2,SIGNAL(clicked()),this,SLOT(get_time()));
//槽链接,获取当前时间;
QObject::connect(ui->calendarWidget_3,SIGNAL(selectionChanged()),this,SLOT(data_change()));
//槽链接,设置预定日期;
9、添加2个函数定义;
void Dialog::get_time()
{
QDateTime nowtime =QDateTime::currentDateTime(); //获取当前服务器时间;
ui->timeEdit_3->setTime(nowtime.time()); //设置时间控件,显示服务器时间;
ui->editTime_2->setText(nowtime.toString("hh:mm:ss")); //设置文本控件,显示服务器时间;
ui->dateEdit_3->setDate(nowtime.date()); //设置日期控件,显示服务器日期;
ui->editDate_2->setText(nowtime.toString("yyyy-MM-dd")); //设置文本控件,显示服务器日期;
ui->dateTimeEdit_3->setDateTime(nowtime);
ui->editDateTime_2->setText(nowtime.toString("yyyy-MM-dd hh:mm:ss")); //设置文本控件,显示服务器日期时间;
}
void Dialog::data_change()
{
QDate dt=ui->calendarWidget_3->selectedDate(); //QDate日期格式对象,dt,从日历控件,获取日期;
ui->dateEdit_3->setDate(dt);
ui->editDate_2->setText(dt.toString("yyyy-MM-dd"));
QDateTime settime=QDateTime::currentDateTime();
settime.setDate(dt);
ui->dateTimeEdit_3->setDateTime(settime);
ui->editDateTime_2->setText(settime.toString("yyyy-MM-dd hh:mm:ss"));
ui->timeEdit_3->setTime(settime.time());
ui->editTime_2->setText(settime.toString("hh:mm:ss"));
}
如下图;
10、运行;效果如图;