[置顶]python知识导航贴,持续更新

[置顶]C# 语言高级特性知识导航贴,持续更新

[置顶]netMarketing类库: 类库说明

[置顶]本站视觉相关教程整理贴子,持续更新

[置顶]C++相关导航贴,持续更新

[置顶]本站收费服务公告(netMarketing源码,工业自动化行业培训班等)

[置顶]2020年勇哥的机器视觉实验项目清单(大纲)

[置顶]本站连载贴子系列,持续更新中……

[置顶]勇哥的免费视频教程清单

[置顶]勇哥在B站发布的视频清单

[置顶]运动控制专题,持续更新

C++&Qt的异常处理

引言我们寄希望使用异常这种方法,让一个函数发现自己无法处理的错误时抛出异常或者做进一步处理。未使用异常处理机制的程序,当遇见无法处理的问题时可能会产生如下后果:程序自行终止(然后程序员开始漫长的找bug过程)返回一个表示错误的值(很多系统函数都是这样,例如malloc,内存不足,分配失败,返回NULL指针)返回一个合法值,让程序处于某种非法的状态(最坑爹的东西,有些第三方库真会这样)调用一个预先准...

C++命名规则

如果想要有效的管理一个稍微复杂一点的体系,针对其中事物的一套统一、带层次结构、清晰明了的命名准则就是必不可少而且非常好用的工具。活跃在生物学、化学、军队、监狱、黑社会、恐怖组织等各个领域内的大量有识先辈们都曾经无数次地以实际行动证明了以上公理的正确性。除了上帝(设它可以改变世间万物的秩序)以外,相信没人有实力对它不屑一顾。在软件开发这一高度抽象而且十分复杂的活动中,命名规则的重要性更显得尤为突出。...

C++中虚析构函数的作用及其原理分析

参考http://blog.csdn.net/xiamentingtao/article/details/55517203C++中的虚析构函数到底什么时候有用的,什么作用呢。一.虚析构函数的作用总的来说虚析构函数是为了避免内存泄露,而且是当子类中会有指针成员变量时才会使用得到的。也就说虚析构函数使得在删除指向子类对象的基类指针时可以调用子类的析构函数达到释放子类中堆内存的目的,而防止内存泄露的.我...

QT5 Thread线程

QT5 Thread线程继承QThread方式一.首先分析一下 QTimer Class与 Sleep()函数之间的秘密QTimer *t = new QTimer(*parent); //创建QTimer 对象t->start(_time); //计时开始每隔_time时间自动触发&QTimer::timeout信号t->stop(); //结束计时Sleep() //win...

QT5 文件读写操作

QFile Class1.read读文件加载文件对象 QFile file("文件地址");打开加载的文件file.open(打开方式);操作文件关闭打开的文件file.colse();void Widget::on_pushButton_clicked() { QFile file("L:/qtpro/_qtApp/text/t.txt");...

QVariant的用法

前言QVariant这个类很神奇,或者说方便。很多时候,需要几种不同的数据类型需要传递,如果用结构体,又不大方便,容器保存的也只是一种数据类型,而QVariant则可以统统搞定。介绍帮助文档上说:The QVariant class acts like a union for the most common Qt data types.。QVariant 这个类型充当着最常见的数据类型的联合。QV...

Qt中新建类构造函数的初始化参数列表

使用Qt-creator自动生成一个窗体应用程序时会自动创建一个新的类,我的程序中名为MyDialog,类的定义为:#ifndef MYDIALOG_H #define MYDIALOG_H #include <QDialog> namespace Ui { class MyDialog; } class MyDialog : public QDialog {...

QSettings读写注冊表、配置文件

简述普通情况下。我们在开发软件过程中,都会缓存一些信息到本地,能够使用轻量级数据库sqlite。也能够操作注冊表、读写配置文件。关于QSettings的使用前面已经介绍过了。比較具体,见“很多其它參考”,以下介绍下QSettings经常使用功能-读写注冊表、配置文件。长处无需指定注冊表路径普通情况下,我们须要定义一个宏,或者常量字符串来指定保存的注冊表位置。#define HKEY_CURRENT...

QT图形视图框架(Graphics View)

Graphics View简介================================Graphics View框架结构的主要特点如下。(1)Graphics View框架结构中,系统可以利用Qt绘图系统的反锯齿、OpenGL工具来改善绘图性能。(2)Graphics View支持事件传播体系结构,可以使图元在场景(scene)中的交互能力提高1倍,图元能够处理键盘事件和鼠标事件。其中,鼠...

Qt:对话框(QDialog)创建及其调用

一、对话框的创建在一个应用程序中,为了实现一些特定的功能,必须自定义对话框自定义对话框一般从QDialog继承而来。当然,根据需要也可以自己设计从别的对话框继承而来二、对话框的使用场景定义了自己的对话框之后,对对话框的使用一般包括在特定情境下创建生成该对话框传递数据给对话框获得对话框的输入数据判断对话框单击按钮的返回类型等等....三、对话框的显示与删除显示模态对话框:当自定义对话框未关闭时,不可...

Qt:MDI多文档界面

一、MDI简介MDI就是多文档界面(Multi-document Interface,MDI)应用程序MDI就是在主窗口里创建多个同类型的MDI子窗口,这些MDI子窗口在主窗口里显示,并共享主窗口上工具栏和菜单等操作功能,主窗口上的操作都针对当前活动的MDI子窗口进行二、QMdiArea组件设计MDI应用程序需要在主窗口工作区放置一个QMdiArea作为MDI子窗体的容器所以我们需要事先创建窗体类...

QT:Splash窗口与登录窗口

一、Splash窗口什么是Splash窗口?一般在大型应用程序启动时会显示一个启动画面,这个启动画面即Splash窗口特点:Splash窗口一般被设计为一个无边对话框,在Windows任务栏不显示当前窗口的图标信息。我们通常在Splash窗口中只显示一个图片,并展示软件的信息等使用场景:Splash窗口显示的时候,程序一般在后台做一些比较耗时的启动准备工作,等到软件的准备工作完成之后,Splash...

Qt:文本文件的读写(QFile、QTextStream)

一、文本文件文本文件是指纯文本格式存储的文件,例如:.cpp、.html、.xml文件等都是纯文本文件二、QT纯文本文件读写函数QT提供了两种读写纯文本文件的方法:①QFile类的IODevice读写功能直接进行读写②QFile和QTextStream结合起来,用流的方法进行文件读写三、QFile类功能:提供了 一个用于读/写文件的接口,它可以用来读/写文本文件、二进制文件和 Qt 资源的 I/0...

Qt: 文件目录操作(QCoreApplication、QFile、QFileInfo、QDir、QTemporaryDir/File、QFileSystemWatcher)

QT提供的与文件和目录相关的类包括以下几个:QCoreApplication:用于提取应用程序路径、程序名等文件信息QFile:除了打开文件操作外,还可以复制文件、删除文件等功能QFileInfo:用于提取文件信息,包括路径、文件名、后缀等QDir:用于提取目录或文件信息,获取一个目录下的文件或目录列表,创建或删除目录和文件,文件重命名等操作QTemporaryDir、QTemporaryFile...

Qt创建和使用动态链接库(.dll)

一、QT的动态链接库QT的动态链接库编译后生成DLL文件(本文只讲解Windows下的动态库文件)DLL文件是在应用程序运行时才加载的,不像静态库那样在编译期就编到应用程序里。若更新了DLL文件,只要接口未变,应用程序依然可以调用使用动态链接库可以很方便地扩展应用程序的功能,但是DLL文件需要随应用程序一起发布,并且编译DLL和应用程序的Qt版本最好保持一致,否则考虑二进制兼容问题二、动态链接库的...

Qt: TCP通信演示案例

一、演示案例一本案例中,服务端与客户端对数据的读取都是“行读取”服务端第一步:创建一个基于QMainWindow的窗体,类名采用默认值,然后设计窗体第二步:类的定义//省略了系统自定义的代码,只列出了自己定义的代码 #include <QTcpServer> #include <QTcpSocket> #include <QHostInfo>...

Qt 网络编程之HTTP通信(QNetworkRequest、QNetworkReply、NetworkAccessManager)

一、高层网络协议类简介Qt网络模块提供了一些类实现OSI 7层网络模型中高层的网络协议,如HTTP、FTP、SNMP等,这些类主要是QNetworkRequest、QNetworkReply、NetworkAccessManagerQNetworkRequest:通过一个URL地址发起网络协议请求,也保存网络请求的信息,目前支持HTTP、FTP和局部文件URLs的下载或上传NetworkAcces...

Qt样式表(setStyleSheet函数、.qss文件)

概念Qt样式表(style sheet)适用于定制用户界面的强有力的机制,其概念、术语是收到HTML中的CSS启发而来,不过Qt样式表是应用于窗体界面的与HTML的CSS类似,Qt的样式表是纯文本的格式定义,在应用程序运行时可以载入和解析这些样式定义,从而使应用程序的界面呈现不同的效果样式表具有继承关系,例如为一个QWidget类设置了样式表,那么QWidget类及其子类都会使用这个样式表很多软件...

QStyle类设置窗口样式(QStyleFactory、QApplication)

一、什么是QStyleQt是一个跨平台的类库,相同的界面组件在不同的操作系统上显示效果是不一样的QStyle是封装了GUI界面组件外观的抽象类,Qt定义了QStyle类的一些子类,应用于不同的操作系统,如QWindowsStyle、QMacStyle等。这些样式是Qt CUI模块自带的,在不停的平台上编译运行的程序具有缺省的样式,QApplication::style()可以返回应用程序缺省的样式...

Qt 的常用类介绍(1)QApplication 对象, qAPP

(一)qApp或者QApplication用法1:谈到QApplication的类不得不提及这个类在main()函数中创建的对象还有一个与之对应的全局宏qApp,我们可以发现他们是同一个内存对象,也就是说可以在程序的任何地方访问app对象:我们可以利用qApp来退出事件循环从而退出应用,正如上图中lambda表达是那样,点击了pushButton按钮,调用quit() 函数。观察控制台输出发现我们...

Qt 中的数据结构类(2)QList、QLinkedList、QVector、 QMap、QHash

迭代器QT支持两种类型的迭代器只读迭代器:const_iterator读写迭代器:iterator只读迭代器比读写迭代器操作速度快很多一、QList概念:是一个提供列表的模板类//函数: insert(); //指定索引处插入值 replace(); //指定索引处替换值 append(); //尾追 prepend(); //头追 at(): //得到索引索引的值 count(...

Qt 用户界面与业务逻辑的分离

1、界面与逻辑基本程序架构一般包括— 用户界面模块(UI)— 业务逻辑模块(Logic)用户界面与业务逻辑如何交互?— 每个模块应该只实现单一的功能— 模块之间通过约定好的接口进行交互用户界面使用这个接口,而业务逻辑实现这个接口基本设计原则— 模块之间仅通过接口进行关联— 模块之间的关系是单项依赖的2、整体架构此时我们有什么?1、我们实现了计算器基本的界面2、我们实现了计算器的基本计算算法我们还需...

Qt对象间的父子关系(对象树)

1、Qt 对象间的关系Qt 对象间可以存在父子关系— 每一个对象都保存有它所有子对象的指针— 每一个对象都有一个指向其父对象的指针当指定 Qt 对象的父对象时— 其父对象会在子对象链表中加入该对象的指针— 该对象会保存指向其父对象的指针#include <QCoreApplication> #include <QDebug> void fcTest() {...

Qt 中的数据结构类(1):QQueue,QStack

1、C++中的queue实现一种 先进先出 的数据结构,是一个模板类。头文件 #include <queue>用法 ( 以 int 型为例 ):queue<int> Q;     //定义一个int型队列 Q.empty();   //返回队列是否为空 Q.size();...

QT-- 编写多线程和并发应用

学习QT多线程编程之前,有必要先熟悉事件循环的概念。先看一个单线程界面程序的主函数代码:int main(int argc, char* argv[]) {   QApplication app(argc, argv);   // 构造主窗口对象并显示   MainWindow w;   w.show();   // 进入事件循环   return app.exec();...

勇哥的VC++应用框架学习之QT(8) 多线程更新UI控件的信息

勇研究了一下QT的多线程,是一个QThread的类,使用方法也C#的Thread类相似。QT的ui界面也称为界面线程,只有它可以更新UI上面的信息,其它的子线程如果想要更新Ui信息,必须通过消息传递给主线程进行更新。这个其实也是和C# 中一样的。在C#中,子线程通过通过调用主界面上的控件的Invoke来委托ui线程执行更新信息的任务。Thread.h#pragma once #include...

勇哥的VC++应用框架学习之QT(7) 文件读写、文件信息、文本流数据流

这方面的应用,主要用来读写配置文件、写生产数据文件这些方面。也算是经常用到的功能了。代码:#include "QtForOpencv.h" #include <opencv2\opencv.hpp> #include <opencv2\core.hpp> #include <opencv2\imgcodecs.hpp> #includ...

聊聊 Qt 的 new 、delete

在C++中学习过程中,我们都知道:delete 和 new 必须 配对使用(一 一对应):delete少了,则内存泄露,多了麻烦更大。Qt作为C++的库,显然是不会违背C++的前述原则的。可是:在Qt中,我们很多时候都疯狂地用new,却很少用delete,缺少的 delete 去哪儿了?!注:本文暂不涉及智能指针(smart pointer)相关的东西,你可以考虑 Qt 智能指针学习 一文Qt半自...

勇哥的VC++应用框架学习之QT(6) Qt的事件、定时器

本篇演示了下面的内容:QLabel中鼠标常用事件定时器的二种实现方式负责事件分发的event事件负责事件过滤的eventFilter下面的演示代码中,界面上第一个label是一个提升为Mylabel类的自定义控件.其它的是普通的labelMyLable.h#pragma once #pragma execution_character_set("utf-8") #inclu...

勇哥的VC++应用框架学习之QT(5) 自定义控件

自定义控件在C#中用得很多,所以我们有必要看看QT里面是如何实现的。Qt的自定义控件,跟新增一个新窗口步骤是一样的,只不过最后我们在另外一个窗口上如果想引用的话,先放一个QWidget控件上去,然后使用右键菜单的“提升为”功能,可以把继承为我们新定义的窗口。下面勇哥说说详细步骤:(1)你需要添加Qt Class,普通的C++类是不可以的。选择Qt GUI Class,这个类会添加一个Ui窗体。(2...
会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864