QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子

QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子

一、简述

       记--简单的颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子。

       例子打包:链接: https://pan.baidu.com/s/1yZ8hEvDgB-2bVml-4ta5Kg 提取码: mntw 

二、效果

       

       QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第1张图片

三、工程结构

        QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第2张图片

        布局:

QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第3张图片

四、源文件

DialogDemo.pro文件

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = DialogDemo
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

RESOURCES += \
    imgs.qrc

mainwindow.h文件

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include 

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private slots:
    void on_btnColor_clicked();

    void on_btnFont_clicked();

    void on_btnInput_clicked();

    void on_actionOpen_triggered();

    void on_actionSave_triggered();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H

main.cpp文件

#include "mainwindow.h"
#include 

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec();
}

mainwindow.cpp文件

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include //消息对话框
#include  //颜色对话框
#include  //字体对话框
#include  //输入对话框
#include //文件对话框
#include //文件相关信息

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_btnColor_clicked()//颜色对话框按钮
{
    QColor color =  QColorDialog::getColor(Qt::blue, this, "请选择颜色");
    QString style = QString("background-color: rgb(%1, %2, %3);").arg(color.red()).arg(color.green()).arg(color.blue());
    ui->edtContent->setStyleSheet(style);
}

void MainWindow::on_btnFont_clicked()//字体对话框按钮
{
    bool is_ok;
    QFont font =  QFontDialog::getFont(&is_ok, QFont("微软雅黑"), this, "请选择字体");
    ui->edtContent->setFont(font);
}

void MainWindow::on_btnInput_clicked()//输入对话框按钮
{
    QString text =  QInputDialog::getText(this,"输入对话框","请输入内容");
    ui->edtContent->setText(text);
}

void MainWindow::on_actionOpen_triggered()//打开文件
{
    //打开文件对话框,返回选择文件的绝对路径         父窗体   标题      默认打开路径(不写就会打开当前路径)
    QString filePath = QFileDialog::getOpenFileName(this, "请选择文件", "D:\\test");
    QFile *file = new QFile(filePath);//创建文件操作对象
    bool isOk = file->open(QIODevice::ReadOnly);//以只读方式打开文件
    if(isOk)
    {
        QByteArray array = file->readAll();//读取文件所有内容
        ui->edtContent->setText(array);//QString中对'='进行运算符重载,可以直接接受QByteArray赋值
    }
    else
    {
        QMessageBox::warning(this, "提示!", "打开文件失败");
    }
    file->close();//关闭文件
}

void MainWindow::on_actionSave_triggered()//保存文件
{
    //弹出保存文件对话框,输入要保存文件的名字      父窗体   标题      默认保存路径
    QString savefile = QFileDialog::getSaveFileName(this,"保存文件", "D:\\test");

    QFile *save = new QFile(savefile);
    save->open(QIODevice::WriteOnly);//以只写方式打开文件

    save->write( ui->edtContent->toPlainText().toUtf8());//将内容写入文件

    save->close();//关闭文件
    QMessageBox::warning(this, "提示!", "保存成功");
}

五、总结

        5.1 包含文件

#include //消息对话框
#include  //颜色对话框
#include  //字体对话框
#include  //输入对话框
#include //文件对话框

        5.2 样式

background-color: rgb(60, 255, 99);

  QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第4张图片

QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第5张图片

 5.3 格式化字符串(填充字符串)

        QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第6张图片

  5.4 主要函数

        QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第7张图片 

 QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第8张图片

 QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第9张图片

 打开文件:

 //打开文件对话框,返回选择文件的绝对路径         父窗体   标题      默认打开路径(不写就会打开当前路径)
    QString filePath = QFileDialog::getOpenFileName(this, "请选择文件", "D:\\test");
    QFile *file = new QFile(filePath);//创建文件操作对象
    bool isOk = file->open(QIODevice::ReadOnly);//以只读方式打开文件
    if(isOk)
    {
        QByteArray array = file->readAll();//读取文件所有内容
        ui->edtContent->setText(array);//QString中对'='进行运算符重载,可以直接接受QByteArray赋值
    }
    else
    {
        QMessageBox::warning(this, "提示!", "打开文件失败");
    }
    file->close();//关闭文件

 保存文件

//弹出保存文件对话框,输入要保存文件的名字      父窗体   标题      默认保存路径
    QString savefile = QFileDialog::getSaveFileName(this,"保存文件", "D:\\test");

    QFile *save = new QFile(savefile);
    save->open(QIODevice::WriteOnly);//以只写方式打开文件

    save->write( ui->edtContent->toPlainText().toUtf8());//将内容写入文件

    save->close();//关闭文件

5.5 添加快捷键、菜单小图标

             QT 颜色对话框、字体对话框、输入对话框、文件对话框、消息框例子_第10张图片

你可能感兴趣的:(QT)