QT练习项目

本文档介绍了一个使用QT框架编写的文本编辑器项目,详细涵盖了`mainwindow.h`和`mainwindow.cpp`两个关键文件的实现,是学习QT开发的好实践。
摘要由CSDN通过智能技术生成

QT练习项目之文本编辑器


mianwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QDebug>
#include <QLabel>
#include <QPalette>
#include <QLineEdit>
#include <QCheckBox>
#include <QDateTime>
#include <QPushButton>
#include <QFileDialog>
#include <QTextStream>
#include <QMessageBox>
#include <QMainWindow>
#include <QRadioButton>
#include <QTextDocument>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

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

private slots:
    void on_actionOpen_triggered();

    void on_actionNew_triggered();

    void on_actionSave_triggered();

    void on_actionSaveAs_triggered();

    void on_actionDel_triggered();

    void on_actionFind_triggered();

    void on_actionFindNext_triggered();

    void on_actionSwap_triggered();

    void on_actionTranto_triggered();

    void on_actionSelectAll_triggered();

    void on_actionTime_triggered();

    void on_actionFont_triggered();

private:
    Ui::MainWindow *ui;

private:
    QString filename;
    QString filename2;
    QString curfile;
    bool cursaveflag;

    QString findtext;
    QLineEdit *findEdit;
    QPushButton *findBtn;
    QRadioButton *findForward;
    QCheckBox *findcasesensitive;
    QRadioButton *findBackforward;
    QTextDocument::FindFlags option;

    QLabel   *swapLabel;
    QLabel   *swapFindLabel;
    QLineEdit *swapLineEdit;
    QLineEdit *swapFindLineEdit;
    QPushButton *swapFindBtn;
    QPushButton *swapBtn;
    QPushButton *swapAllBtn;

    int linenum;

    QLabel *trantoLabel;
    QLineEdit *trantoLineEdit;
    QPushButton *trantoBtn;

public:
    void LoadFile(QString filename);
    void SaveFile(QString filename);
    void SaveAsFile(QString filename);


public slots:
    void findText();
    void swapfindText();
    void swapText();
    void swapAllText();
    void trantoText();

};

#endif // MAINWINDOW_H

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <QTextBlock>
#include <QFontDialog>

MainWindow::
课程的背景 Qt是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程式,也可用于开发非GUI程式,比如控制台 工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许 组件编程。2008年,奇趣科技被诺基亚公司收购,QT也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。 1.2、课程内容简介 该课程主要分为三个部分: 第一部分:从QT的基础理论知识入门 第二部分:通过QT媒体播放器项目实战训练巩固 第三部分:讲解QT系统移植 1.3、课程大纲 第一讲:QT简介、课程介绍、windows下QT开发环境搭建 第二讲:Linux下QT开发环境搭建1:VMWare安装及使用、Linux安装及使用 第三讲:Linux下QT开发环境搭建2:QT X11编译、安装、使用 第四讲:Linux下QT开发环境搭建3:QTEmbedded交叉编译 第五讲:Linux下C++快速串讲1:类与对象 第六讲:Linux下C++快速串讲2:继承与多态 第七讲:QT基本图形组件 第八讲:QT信号和槽 第九讲:纯代码打造QT界面 第十讲:QT消息框和对话框 第十一讲:QT菜单 第十二讲:QT工具栏和状态栏 第十三讲:PMP媒体播放器项目实战1:需求分析与关键技术 第十四讲:PMP媒体播放器项目实战2:音频播放 第十五讲:PMP媒体播放器项目实战3:音乐切换 第十六讲:PMP媒体播放器项目实战4:添加和删除播放列表 第十七讲:PMP媒体播放器项目实战5:音量控制和播放方式 第十八讲:系统移植1:系统移植概述及UBoot移植 第十九讲:系统移植2:内核和根文件系统移植 第二十讲:系统移植3:Madplay移植和QT移植 第二十一讲:PMP项目移植与远程视频监控系统 第二十二讲:项目完善:视频播放和系统设置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值