QT

完成文本编辑器保存功能

widget.h

#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
}
 
Widget::~Widget()
{
    delete ui;
}
//字体
void Widget::on_fontBtn_clicked()
{
    //定义一个ok用来返回是否选中字体
    bool ok;
    //调用静态成员函数getFontDialog
    QFont f= QFontDialog::getFont(&ok,
                                  QFont("幼圆",20,10,false),
                                  this,
                                  "选择字体");
    //判断是否选中了字体
    if(ok)
    {
        //将选中的字体设置到界面文本上
        //        ui->textEdit->setFont(f);
        //将字体设置到选中的当前文本上
        ui->textEdit->setCurrentFont(f);
    }else
    {
        QMessageBox::information(this,"提示","您没有选择字体");
    }
 
}
//颜色
void Widget::on_colorBtn_clicked()
{
    //获取颜色对话框选择一个颜色
    QColor c=QColorDialog:: getColor(QColor(35,203,190),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,
                                                  "选择文件",
                                                  "./",
                                                  "all file(*.*);;Text(*.txt)"
                                                  );
    qDebug()<<fileName;
    //文件操作
    QFile file(fileName);     //实例化文件对象
    //打开文件
    if(!file.open(QFile::ReadOnly))
    {
        return;
    }
    //读取数据
    QByteArray msg= file.readAll();
    //将数据展示到ui界面上
    ui->textEdit->setText(msg);
    //关闭文件
    file.close();
}
//保存
void Widget::on_saveBtn_clicked()
{
    QString fileName=QFileDialog::getSaveFileName(
                this,
                "保存",
                "./",
                "all(*.*)"
                );
    QFile file(fileName);
    if(!file.open(QFile::ReadWrite))
    {
        return;
    }
    QString msg=ui->textEdit->toPlainText();
    file.write(msg.toLocal8Bit());
    file.close();
    QMessageBox::information(this,"成功","保存成功");
 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值