字体、颜色、打开文件、保存文件
#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("微软雅黑", 10, 5, true), //设置初始字体(字体,大小,粗细程度,是否倾斜)
this, //父组件
"字体");//对话框标题
if(ok)
{
//ui->msgEdit->setFont(f); //将全部字体修改
ui->msgEdit->setCurrentFont(f); //将选中字体修改
}
else
{
//如果没有改变字体,则不需要操作
}
}
//颜色按钮的槽函数
void Widget::on_colorBtn_clicked()
{
//调出颜色对话框
QColor c = QColorDialog::getColor(QColor(0, 0, 0), //设置初始颜色 red=0 green=0 blue=0 黑色
this, //父组件
"颜色"); //对话框标题
if(c.isValid())
{
//ui->msgEdit->setTextColor(c); //改变字体颜色
ui->msgEdit->setTextBackgroundColor(c); //改变字体背景色
}
}
//打开文件按钮的槽函数
void Widget::on_openBtn_clicked()
{
//1、找到要打开的文件的路径
QString fileName = QFileDialog::getOpenFileName(this, //父组件
"选择文件", //对话框标题
"./", //起始路径 当前路径
"all(*.*)"); //文件类型过滤器
//2、使用QFile类实例化一个对象,可以用获取到的路径名进行构造
QFile f(fileName);
//3、打开文件,以读写形式
if(!f.open(QFile::ReadWrite))
{
return;
}
//4、读取文件内容,全部读取,返回类型是字节数组
QByteArray msg = f.readAll();
//5、将读取到的内容放入UI界面
ui->msgEdit->setText(msg);
//6、关闭文件
f.close();
}
//保存文件按钮的槽函数
void Widget::on_saveBtn_clicked()
{
QString file = QFileDialog::getSaveFileName(this, //父组件
"保存文件", //对话框标题
"./", //起始路径 当前路径
"all(*.*)"); //文件类型过滤器
//实例化一个对象
QFile f(file);
//打开文件,以写形式
if(!f.open(QFile::WriteOnly))
{
return;
}
//获取输入的内容
QString msg = ui->msgEdit->toPlainText();
//将QString转换成QByteArray
QByteArray m = msg.toLocal8Bit();
//将内容放入文件中
f.write(m);
//关闭文件
f.close();
}