首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Qt5 教程
】的更多相关文章
Qt5 教程
序 Qt 前言 Hello, world! 信号槽 自定义信号槽 Qt 模块简介 MainWindow 简介 添加动作 资源文件 对象模型 布局管理器 菜单栏.工具栏和状态栏 对话框简介 对话框数据传递 标准对话框 QMessageBox 深入 Qt5 信号槽新语法 文件对话框 事件(点击显示鼠标位置坐标) 事件的接受与忽略 event() 事件过滤器 事件总结 自定义事件 Qt 绘制系统简介 画刷和画笔 反走样 渐变 坐标系统 绘制设备 Graphics View Framework 贪吃蛇游…
Qt5教程: (4) 带参数信号与槽
在subwidget.h中声明一个signal. 和之前的信号函数重名但是有参数: void backSignal(QString); 之后在subwidget.cpp的槽函数sendSignal()中也发送该信号: emit backSignal("子窗口请求返回"); 在mainwidget.h中声明一个槽函数来响应该信号: void logSlot(QString); 并在mainwidget.cpp中定义该槽函数, 打印信号传过来的字符串: void MainWidget::l…
Qt5教程: (2) 信号与槽
1. 新建工程 新建一个"Qt Widgets Application"工程 2. 添加按钮 一个Qt工程会有很多个控件, 如果把逻辑代码都写在main函数里, main函数会非常长, 而且不方便维护, 所以最好把代码都在别的Sources中实现. 2.1 修改mainwidget.h文件 在 mainwidget.h 文件中添加头文件, 然后定义两个按钮, 一个正常定义, 一个使用指针: #ifndef MAINWIDGET_H #define MAINWIDGET_H #inclu…
Qt5教程: (9) Qt多线程
目录 0. 创建工程 1. QThread 源码一览 2. QThread相关方法介绍 2.1 启动线程 2.2 关闭线程 2.3 阻塞线程 2.4线程状态判断 2.5 设置优先级 2.6 信号 3. 创建线程 3.1 继承QThread方式 a. 定义MyThread类 b. 重载run() c. 开始和结束线程 附: Qt4适用写法 附: exit()和requestInterruption()区别 3.2 moveToThread方式(Qt5新增 官方推荐) a. 定义一个继承QObjec…
Qt5教程: (8) 标准对话框和文件对话框
1. about对话框 包含头文件 #include <QMessageBox> 添加菜单项 QAction *p3 = pDialog->addAction("关于"); 创建about对话框 connect(p3, &QAction::triggered, [=]() { QMessageBox::about(this, "关于", "关于Qt"); } ); 运行后点击菜单栏下的"关于", 弹出…
Qt5教程: (7) 模态/非模态对话框
模态对话框就是在其没有被关闭之前,用户不能与同一个应用程序的其他窗口进行交互,直到该对话框关闭. 非模态对话框就是在被打开时,用户既可选择和该对话框进行交互,也可以选择同应用程序的其他窗口交互. 1. 新建工程 2. 添加菜单栏 创建"Dialog"菜单, 添加一个"模态对话框"项和"非模块对话框项": QMenuBar *menuBr = menuBar(); setMenuBar(menuBr); QMenu *pDialog = menuB…
Qt5教程: (6) 菜单栏、工具栏、状态栏及核心控件
1. 新建QMainWindow工程 取消生成.ui文件 2. 菜单栏 在mainwindow.cpp中添加头文件 和 #include <QMenuBar> #include <QMenu> #include <QAction> #include <QDebug> 新建菜单栏 // 新建菜单栏 QMenuBar *menuBr = menuBar(); setMenuBar(menuBr); 给菜单栏添加菜单 // 添加菜单 QMenu *pFile =…
Qt5教程: (5) Lambda匿名函数的使用
Lambda是C++11的新特性, 首先看看你的.pro项目文件里有没有CONFIG += c++11这句话, 没有就加上. 下面新建一个工程, 具体步骤就不多说了 然后给主窗口添加一个按钮b, 并且包含头文件, 下面要用. 我们先来看一下匿名函数最简单的使用 connect(&b, &QPushButton::clicked, [] () { qDebug() << "1111"; } ); 之后保存运行, 点击按键会发现, 1111被打印出来了. 这个匿…
Qt5教程: (3) 自定义信号与槽
1. 自定义槽 槽可以是任何成员函数.普通全局函数.静态函数 槽函数和信号的参数和返回值要一致 由于信号是没有返回值的, 槽函数也一定没有返回值 首先在mainwidget.h中添加槽函数: public slots: void mySlot(); 之后在mainwidget.cpp文件中定义槽函数: void MainWidget::mySlot() { b2->setText("^_^"); } 现在, 我们希望当Button2按下时, Button2显示的文本变成笑脸, 就…
Qt5教程: (1) Hello World 程序
1. 新建工程 在Welcome界面选择New Project --> Application --> Qt Widgets Application --> Choose 输入工程名称Name, 并选择工程存放路径, 点击Next. 下一个页面继续点击Next(是否作为默认工程路径, 自己决定勾不勾选). 选择Base class为Qwidget, 输入Class name(自定义), 取消勾选Generate form(不添加ui文件), 点击Next, 再点击Finish, 工程就创…