//保存按钮对应的槽函数
void Widget::on_saveBtn_clicked()
{
QString filename=QFileDialog::getSaveFileName(this, "保存文件","./",
"Text files (*.txt)");
//1 实例化文件对象
QFile file(filename);
//2 打开文件
if(!file.isOpen())
{
//调用打开文件操作
if(!file.open(QFile::ReadWrite))
{
QMessageBox::critical(this,"失败","文件打开失败");
return ;//文件打开失败
}
}
//3 获取文本框内容
QString str = ui->textEdit->toPlainText();
//4 将文本框内容转为可写入的流
QByteArray array=str.toUtf8();
//5 写入数据
file.write(array);
}
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
}
Widget::~Widget()
{
delete ui;
}
//启动
void Widget::on_startbtn_clicked()
{
timer_id=this->startTimer(1000);
//功能 启动定时器
//参数 超时时间 每隔给定的事件后 自动调用定时器事件处理函数
//返回值 当前定时器的id号
}
//关闭
void Widget::on_closebtn_clicked()
{
//关闭给定的定时器
//this->killTimer(timer_id);
speecher->stop();
ui->lineEdit->clear();
}
//定时器事件处理函数
void Widget::timerEvent(QTimerEvent *e)
{
if(e->timerId()==timer_id)
{
//获取系统时间
QTime sys_t=QTime::currentTime();
//将QTime类对象转换为字符串
QString t=sys_t.toString("hh:mm:ss");
//展示到ui界面
ui->timelabel->setText(t);
QTextToSpeech *speech = new QTextToSpeech;
QString text = ui->textEdit->toPlainText();
if(ui->lineEdit->text()==t)
{
speech->say(ui->textEdit->toPlainText());
}
}
// static int num=1;
// ui->timelabel->setNum(num++);
}