补全保存代码
#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_fontBtn_clicked()
{
bool ok; //接受返回的结果,存储是否选中字体
QFont f = QFontDialog::getFont(&ok,
QFont("微软雅黑",14,4,true),//字体,大小,粗细,是否倾斜
this,
"选择字体"); //对话框标题
//对ok判断,判断是否选中字体
if(ok)
{
//将该字体加载到文本内容上
//ui->textEdit->setFont(f);//这个是设置全部字体
ui->textEdit->setCurrentFont(f);//设置当前选中的字体
}
else
{
QMessageBox::information(this,"错误","用户没有选择字体");
}
}
void Widget::on_colorBtn_clicked()
{
//调取系统中颜色对话框
QColor c = QColorDialog::getColor(QColor(85,255,255),//初始颜色
this,
"选中颜色"); //对话框标题
if(c.isValid())
{
ui->textEdit->setTextColor(c);//设置字体颜色
//ui->textEdit->setTextBackgroundColor(c);
}
else
{
QMessageBox::information(this,"错误","用户没有选中颜色");
}
}
//选中系统中某个文件,打开文件按钮对应的槽函数
void Widget::on_openBtn_clicked()
{
QString fileName = QFileDialog::getOpenFileName(
this,
"选择文件",
"./", //起始路径
"所有文件(*.*);;头文件(*.h);;图片(*.png,*.xpm,*.jpg);;文本(*.txt)");//过滤器
qDebug() << fileName;
//文件操作
//1.实例化文件对象
QFile file(fileName);
//2.判断文件是否存在
if(!file.exists())
{
QMessageBox::information(this,"错误","文件不存在");
}
//3.打开文件
if(!file.open(QIODevice::ReadWrite))
{
QMessageBox::information(this,"错误","文件打开失败");
return ;
}
//4.文件读写
QByteArray msg = file.readAll(); //读取所有信息
//5.关闭文件
file.close();
//将读取到的数据展示到ui界面的文本框上
ui->textEdit->setText(QString::fromLocal8Bit(msg));
}
void Widget::on_saveBtn_clicked()
{
QString fileName = QFileDialog::getSaveFileName(this,"保存文件",
"./",
"所有文件(*.*);;头文件(*.h);;图片(*.png,*.xpm,*.jpg);;文本(*.txt)");
qDebug() << fileName;
//文件操作
//1.实例化文件对象
QFile file(fileName);
//2.判断是否打开成功
if(!file.open(QIODevice::Append))
{
return ;
}
//3.文件读写
QString msg = ui->textEdit->toPlainText()+'\n';//获取ui上的文本
//4.保存到文本中
file.write(msg.toLocal8Bit());
//5.关闭文件
file.close();
QMessageBox::information(this,"成功","保存成功");
}