![](https://img-blog.csdnimg.cn/direct/e9ae18e19e3445deb88e93f3ea567484.png)
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
this->setWindowFlag(Qt::FramelessWindowHint);
this->setAttribute(Qt::WA_TranslucentBackground);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_pushButton_2_clicked()
{
close();
}
void Widget::on_pushButton_clicked()
{
QString get = ui->lineEdit->text();//获取UsernameEdit文本内容
QString getpa = ui->lineEdit_2->text();//获取PassEdit文本内容
if(get == "admin" && getpa == "123456")
{
QMessageBox::information(this,"登录","登录成功");//静态版本
close();//关闭窗口
emit my_jump();
}else
{
int ret = QMessageBox::critical(this, "警告", "密码或用户名错误,是否重新登录",QMessageBox::Yes | QMessageBox::No);//静态版本弹出警告框
if(ret == QMessageBox::Yes)//判断选择那个
{
ui->lineEdit->clear();//清空UsernameEdit文本
ui->lineEdit_2->clear();//清空PassEdit文本内容
}else
{
close();
}
ui->lineEdit->clear();//清空UsernameEdit文本
ui->lineEdit_2->clear();//清空PassEdit文本内容
}
}
void Widget::on_pushButton_3_clicked()
{
QMessageBox msg(QMessageBox::Question,//图标 属性版本有参构造一个对象
"",//标题
"您是否要退出登录",//文本
QMessageBox::Yes | QMessageBox::No,//选项
this);//父组件
int ret = msg.exec();//弹出对话框
if(ret == QMessageBox::Yes)//判断用户选择
{
close();
}else
{
}
}
![](https://img-blog.csdnimg.cn/direct/ff7a1e9a9b874f279cc02800cfad9364.png)
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
, speecher(new QTextToSpeech(this))//给语音播报实例化空间
{
ui->setupUi(this);
this->setWindowFlag(Qt::FramelessWindowHint);//隐藏头部
this->setAttribute(Qt::WA_TranslucentBackground);//隐藏空白
ui->label_3->setWordWrap(true);//标签文字自动换行
id = startTimer(1000);//时间计时器
}
Widget::~Widget()
{
delete ui;
}
void Widget::timerEvent(QTimerEvent *e)
{
if(e->timerId() == id)
{
QTime sys_time = QTime::currentTime();//获取时间
QString t = sys_time.toString("hh::mm::ss");//转换成QString类型
ui->label->setText(t);//添加到标签
ui->label->setAlignment(Qt::AlignCenter);//居中显示
}else if(e->timerId() == id1)
{
QString time = ui->lineEdit->text();//获取设置的时间
QString nm = ui->label->text();//获取当前时间
if(time == nm)
{
speecher->say(ui->label_3->text());//播报闹钟
}
}
}
void Widget::on_pushButton_2_clicked()
{
close();
}
void Widget::on_pushButton_clicked()
{
QMessageBox::information(this,"成功","闹钟设置成功");
id1 = startTimer(1000);//设置闹钟计时器
}
![](https://img-blog.csdnimg.cn/direct/e79c2334f3d644418fbe35eb9f7e817e.png)