题记:闲来无事,学习了下Qt,发现Qt确实比MFC强大许多,这是我的qt实现的第一个项目,代码可能有冗余,但是基本实现了记事本功能,注释详细,适用于小白入门。
工程目录:
main.cpp
mainwindow.cpp
mainwindow.h
mainwindow.ui
myimages.qrc
notepad.pro
工具Qt Creator
代码如下:
main.cpp
#include "mainwindow.h"
#include <QApplication>
#include <QTranslator>
#include <QLibraryInfo>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
#ifndef QT_NO_TRANSLATION//对话框翻译成中文,要不然字体对话框和颜色对话框里面都是英文
QString translatorFileName = QLatin1String("qt_");
translatorFileName += QLocale::system().name();
QTranslator *translator = new QTranslator(&a);
if (translator->load(translatorFileName, QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
a.installTranslator(translator);
#endif
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QTextEdit>
#include <QDebug>
#include <QFileDialog>
#include <QFile>
#include <QTextStream>
#include <QMessageBox>
#include <QSignalMapper>
#include <QLabel>
#include <QFont>
#include <QFontDialog>
#include <QColorDialog>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
this->setWindowTitle(tr("无标题 - 测试记事本[*]"));
connect(ui->action_New, SIGNAL(triggered()), this, SLOT(NewCreate()));
connect(ui->action_Open, SIGNAL(triggered()), this, SLOT(OpenFil