QT简易记事本

qt编程实现的简易记事本(范例) Qt是一种跨平台的原生开发框架,面向所有主要的操作系统,包括Linux、Windows、Mac、Symbian和Maemo。本文介绍的是在Windows下用qt编程实现的简易记事本,有兴趣学习qt编程的可以看看。本人也是刚接触qt编程,觉得qt相对其他语言来说学起来还是比较容易的。   这是我用Qt Creator实现的简易记事本: 上面界面是用Qt  Designer实现的 是不是 阅读详情
#include "notepad.h"
#include "ui_notepad.h"
#include <QFileDialog>
#include <QMessageBox>
#include <QFile>
#include <QDebug>
NotePad::NotePad(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::NotePad)
{
    ui->setupUi(this);

    connect(ui->newAction, &QAction::triggered, this, &NotePad::newFileActionSlot );
    connect(ui->openAction, &QAction::triggered, this, &NotePad::openFileActionSlot );
    connect(ui->saveAction, &QAction::triggered, this, &NotePad::saveFileActionSlot );
}

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


void NotePad::newFileActionSlot(){
    ui->textEdit->clear();
    ui->textEdit->setWindowTitle("new file");
}
void NotePad::openFileActionSlot(){
    // QFileDialog::getOpenFileName用于打开一个框,选择文件
    // 返回值是对应的文件名称
    // QCoreApplication::applicationFilePath获取当前应用目录
    QString fileName = QFileDialog::getOpenFileName(this, "打开一个文件 ", QCoreApplication::applicationFilePath(), "*.cpp");
    if (fileName.isEmpty()) {
        QMessageBox::warning(this, "警告 ", "请打开一个文件 ");
    }
    else {
        QFile file(fileName);
        file.open(QIODevice::ReadOnly);
        QByteArray ba = file.readAll();

        ui->textEdit->setText(QString(ba));
        file.close();
    }
}
void NotePad::saveFileActionSlot(){

    QString fileName = QFileDialog::getSaveFileName(this, "保存一个文件 ", QCoreApplication::applicationFilePath());
    if (fileName.isEmpty()) {
        QMessageBox::warning(this, "警告 ", "请保存一个文件 ");
    }
    else {
        // toPlainText获取textEdit中的文本
        QString text = ui->textEdit->toPlainText();
        QFile file(fileName);

        // 文件的读取和写入都是QByteArray对象
        // QByteArray转QString ,QString有对应构造函数
        // QString转QByteArray, QByteArray对象有append方法
        file.open(QIODevice::WriteOnly);
        QByteArray ba;
        ba.append(text);
        file.write(ba) ;
        file.close();
    }
}


void NotePad::keyPressEvent(QKeyEvent* event){
    // 使用快捷键实现文件的保存
    if (event->modifiers() == Qt::ControlModifier && event->key() == Qt::Key_S){
        saveFileActionSlot();
    }
}

void NotePad::mousePressEvent(QMouseEvent* event){
    QPoint pt = event->pos();
    qDebug()<<pt;

    if (event->button() == Qt::LeftButton){
        qDebug()<<"left button";
    }
    else if (event->button() == Qt::RightButton){
        qDebug()<<"right button";
    }
}





【C++实训】QT简易记事本 秉承着学习一定要把自己搞懂的原则,我决定再来写一篇blog。因为昨天做的记事本,可能写出来了,但是我并没有真正搞明白,所以,觉得一点点分析下来,也许会有一点点的进步。那么我们开始吧! 一、在ui界面绘制 首先,你需要在ui界面绘制出你需要写入的功能,如:文件、编辑、帮助等。在每个大分类下,也会有一些不同的功能,比如打开、删除、复制、粘贴等。 在最上面的“在这里输入”处,输入你需要的功能,方法如... 阅读详情

相关推荐

使用QT做一个简易记事本功能保存,复制,粘贴,打开

QT简易记事本保存,复制,粘贴,打开,显示行号列号

qq_59109552的博客 833

qt学习:实战 记事本 + 快捷键 + 鼠标滚轮 + 打开读取写入关闭文件

在.h里public:QFile file;//文件描述符//增加当前字体大小函数//减小当前字体大小函数//在用户按下 Ctrl 键的同时滚动鼠标滚轮时,执行放大或缩小操作//槽函数//多选框变化后发出信号绑定槽函数来改变编码//编辑框的光标位置发生变化时发出信号绑定槽函数来改变对应有多少字符多少行。

weixin_59669309的博客 1275

基于QT的简易记事本应用设计

QT是一个跨平台的C++应用程序开发框架,广泛应用于GUI程序的开发。它提供了一套丰富的API,包括窗口部件(widgets)、图形视图、网络通信、数据库访问、多媒体和测试等模块。QT支持多种操作系统,包括Windows、macOS、Linux以及嵌入式系统,使得开发者可以编写一次代码,然后在不同的平台上编译和运行。文件操作是应用程序与文件系统交互的基本方式,它涉及数据的创建、读取、写入和删除等操作。

weixin_34374684的博客 751

QT—记事本项目

QComboBox 提供了一系列方法来添加、删除和修改列表中的项,支持通过索引或文本检索项,并可以通过信号和槽机制来响应用户的选择变化。获取用户在QComboBox上选择的字符编码,用特定编码打开文件,这里注意QComboBox返回QString类型,使用QTextEdit的cursorPositionChanged信号,当光标发生移动时候刷新显示。它允许用户从一组选项中选择一个选项,并可以配置为可编辑,使用户能够在其中输入文本。判断当下是否有已经打开的文件,如果有打开的文件。文件是否打开,打开就关闭;

qq_47944751的博客 1668

QT框架下的简易记事本应用开发指南

跨平台应用程序开发一直是软件开发领域的热点话题。随着技术的进步,开发者们渴望有一种能够在一个代码库上为多个操作系统构建应用程序的方法。QT框架以其独特的跨平台能力在众多框架中脱颖而出。QT(又称Qt)是一个跨平台的C++应用程序框架,广泛用于开发图形用户界面应用程序以及跨平台的应用程序。它提供了丰富的控件和模块,能够高效地构建美观、一致的用户体验。Qt不仅在桌面应用开发中表现突出,还支持移动平台和嵌入式系统,成为开发者在多平台下开发应用程序的首选工具之一。

weixin_35899324的博客 901

基于Qt5.0的简易记事本开发实战项目

在完成Qt基础组件的学习与功能实现后,我们将所有知识点整合到一个完整的桌面应用程序——简易记事本(Simple Notepad)中。该项目以为核心窗口,集成QTextEdit作为文本编辑区域,通过QMenuBar和QToolBar提供用户交互入口,并借助QFile等类实现文件的打开、保存与另存为功能。整个项目的模块结构如下表所示:模块功能描述使用的核心类主窗口管理构建主界面框架文本编辑区提供可编辑文本区域。

weixin_34598113的博客 1048

QT实现简易记事本

QT的Qmainwindow实现简易记事本,不带有UI界面。

m0_63764282的博客 758

基于QT3实现的简易记事本程序设计与开发

在当今软件开发领域,跨平台能力已成为衡量一个开发框架是否具备现代适应性的关键指标。QT作为一款功能强大且成熟的C++图形用户界面应用程序开发框架,凭借其卓越的跨平台支持、丰富的类库以及高效的开发工具链,广泛应用于桌面应用、嵌入式系统和移动终端等多个领域。// 支持多选"Markdown文件 (*.md)","C++源码 (*.cpp *.h)","图像文件 (*.png *.jpg *.bmp)"});// 显示详细信息视图此配置允许用户一次选择多个不同类型文件,适用于批量导入场景。

weixin_33205138的博客 992

【Qt学习】一个简易的记事本

QString filename = QFileDialog::getOpenFileName(this, "选择一个文件",QString filename = QFileDialog::getSaveFileName(this, "选择一个文件",QMessageBox::warning(this, "警告", "请选择一个文件");QMessageBox::warning(this, "警告", "请选择一个文件");this->setWindowTitle("新建文本文档.txt");

weixin_65526425的博客 701

QT做一个记事本

QT做一个简易记事本,实现新建,保存,另存为,撤销,打开等功能,包含全部QT文件,是实训跟着老师做的,可用

用QT编写的简单记事本程序

这是利用QT3编写的类似于window下的记事本,可实现简单的记事本功能。

qt制作简易记事本

最近在学qt,用qt实现了简易记事本的功能 实现功能如下: 1.新建、打开、保存、另存为、退出; 2.撤销、前进、复制、粘贴、剪切; 3.颜色、字体、下划线、倾斜、黑体的设置; 4.设置居中、左对齐、右对齐; 5.切换记事本背景图片;(ps:部分功能是在Windows现有功能上添加的) 下面是功能截图: 下面放上完整的源代码: main.cpp #include "mainwindow.h" #include <QApplication> int main(int argc, cha

m0_56777650的博客 4503

QT简单的记事本

QT简单的记事本,包含新建文件,打开文件,另存为文件,

qt 制作记事本_Qt_Demo_1:实现一个简易的记事本

1 #include "mainwindow.h"2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #include 14 #include 15 #include 16 #include 17 ...

weixin_39969568的博客 463

QT实现简单记事本

QT实现简单记事本

qt版简易记事本

使用qt5.6.0, 读者可以自行更改为其它版本的qt, 没有使用复杂的其它代码,十分简洁易懂,适合初学者看

qt_简易记事本_1

学习qt,做了一个简易记事本,模仿windows的记事本做的,做一下笔记,顺便复习 也就是一些函数的总结。 有错误 欢迎指正 环境:win 8.1  vs2013 qt5.5 中间的编辑区(文本域)使用的QTextEdit, ////////////////////////////////////////////////////////////////// QTextEdit:多行文本

893

Dify+firecrawl:一个超好用的网页转Markdown API,打造你的第一个能检索爬虫RAG知识库的聊天机器人

Firecrawl是一个超简单的API服务——你扔给它一个URL,它就能把整个网站(包括子页面!)的内容自动抓下来,并且转换成干净、易读的Markdown格式。不用配置网站的站点地图,不用写爬虫规则,API调一下,数据直接到手。接下来我们一起本地部署吧!

2501_91673550的博客 2992

Qt5 简易记事本开发教程

本项目实现了一个简易记事本应用,包含了基本的文件操作和编辑功能。通过本项目的开发,我们学习到了 Qt 的基本界面设计、信号与槽机制、文件操作、事件处理等核心知识点。文本格式设置:支持设置文本的字体、字号、颜色、对齐方式等。查找与替换:支持在文本中查找指定内容,并进行替换。自动保存:定期自动保存文件,避免意外丢失数据。多窗口支持:支持同时打开多个文件,每个文件在独立的窗口中显示。打印功能:支持将文本内容打印出来。

2401_87473180的博客 779

【AI学习笔记】Coze平台实现将Excel文档批量导入数据库全过程

通过Coze平台实现将Excel文档批量导入数据库的全流程,包括B站现有参考教程全方位解读、自己实操的一些BUG解决过程,以及一些疑难问题的探索。

bailichen800的博客 8828

【深度学习】手把手教你在远程服务器上跑 YOLOv3 相关代码(含环境配置)

这篇文章主要记录了如何配置项目环境以及如何在远程服务器上跑 YOLOv3 模型。

作者正在煮茶中... 2384
上一篇: QT Object定时器使用
下一篇: QT tcpserver
最后冰吻free
博客等级 码龄12年 121粉丝 371原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值