字体对话框(QFontDialog)
颜色对话框(QColorDialog)
文件对话框(QFileDialog)
文件操作
#include "mywindow.h"
#include "ui_mywindow.h"
myWindow::myWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::myWindow)
{
ui->setupUi(this);
}
myWindow::~myWindow()
{
delete ui;
}
void myWindow::on_btn_clicked() //字体
{
bool ok;
QFont f=QFontDialog::getFont(&ok,QFont("华文黑体",10,2,true),NULL,"选择字体");
if(ok)
{
qDebug()<<"用户选中了一个字体";
// ui->textEdit->setFont(f); //更改全部字体
ui->textEdit->setCurrentFont(f); //更改选中对字体
}
else
{
qDebug()<<"用户取消选择字体";
}
}
void myWindow::on_clrbtn_clicked() //颜色
{
QColor c=QColorDialog::getColor(QColor("pink"),this,"选择颜色");
if(c.isValid())
{
//ui->textEdit->setTextColor(c);
ui->textEdit->setTextBackgroundColor(c);
}
else
{
qDebug()<<"用户取消选择颜色";
}
}
void myWindow::on_openbtn_clicked() //打开文件
{
QString filename=QFileDialog::getOpenFileName(this,"选择打开对文件","./","ALL(*.*);;Text(*.txt);;源文件(*.cpp);;图片(*.png *.jpg *.gif)");
if(filename.isEmpty())
{
qDebug()<<"用户取消选择文件";
return;
}
qDebug()<<filename;
QFile file(filename);
//判断文件是否存在
if(!file.exists())
{
qDebug()<<"文件不存在";
return;
}
if(!file.open(QIODevice::ReadWrite))
{
qDebug()<<"文件打开失败";
return;
}
QByteArray text=file.readAll();
ui->textEdit->setText(QString::fromLocal8Bit(text));
file.close();
}
void myWindow::on_savebtn_clicked() //保存文件
{
QString filename =QFileDialog::getSaveFileName(this,"保存文件","./","ALL(*.*)");
QFile file(filename);
if(!file.open(QIODevice::ReadWrite))
{
qDebug()<<"文件打开失败";
return;
}
QString msg=ui->textEdit->toPlainText();
file.write(msg.toLocal8Bit());
file.close();
}