- 博客(19)
- 资源 (31)
- 收藏
- 关注
原创 Qt信号槽不能响应信号的原因以及connect函数的两种关联方式
信号槽失效的原因用Qt进行信号与信号槽连接后,会出现信号槽不响应信号的情况,原因可能是以下的情况:1、类没有声明Q_OBJECT;2、信号槽没有定义为pubic/private slots;3、事件被子控件过滤掉了。比如QListWidget,当QListWidgetItem已经处理keypress事件后,QListWidget就不能响应itemDoubleClicked事件了。4、信号槽的参数是自定义的,这时需要用qRegisterMetaType注册一下这种类型。具体操作可搜索 qRegist
2020-11-30 15:21:01 18813 2
原创 快速排序平均时间复杂度O(n log n),目前最好的一种内部排序方法(C++实现)
快速排序(Quicksort)是对冒泡排序的一种改进。快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。算法流程快速排序算法通过多次比较和交换来实现排序,其排序流程如下:(1)首先设定一个分界值,通过该分界值将数组分成左右两部分。(2)将大于或等于分界值的数据集中到数组右边,小
2020-11-30 10:22:53 1631
原创 Qt 5模型/视图结构
Qt引入了模型/视图结构用于完成数据与界面的分离,即InterView框架。Qt的InterView框架把视图和控制器部件结合在一起,是的框架更为简洁。为了灵活地处理输入,InterView框架引入了代理(Delegate)。通过使用代理,能够自定义数据条目(Item)的显示与编辑。Qt的模型/视图结构分为三部分:模型(Model)、视图(View)和代理(Delegate)。其中,模型与数据源通信,并为其他部件提供接口;视图从模型中获得用来引用数据条目的模型索引(Model Index)。在视图
2020-11-28 13:40:50 267
原创 非比较排序:基数排序(radix sort)以线性时间O(n)进行排序(C++实现)
虽然可以证明:任何只使用 比较 的一般排序算法在最坏的情形下需要的运行时间为O(n log n),但是,在某些特殊情况下,以线性时间O(n)进行排序仍然是可能的:基数排序、计数排序、和桶排序。非比较排序基数排序基数排序基数排序法是属于稳定性的排序,其时间复杂度为O (nlog®m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它的稳定性排序法。时间效率 :设待排序列为n个记录,d个关键码,关键码的取值范围为radix,则进行链式基数排序的时间复杂度为O(d(n+radi
2020-11-26 17:01:12 219
原创 Qt使用小技巧记录
Qt字符串国际化tr()正则表达式Qt中使用正则表达式控制输入字符串国际化tr()函数tr()的原型是QObject::tr(),被它处理的字符串可以使用工具提取出来翻译成其他语言,也就是国际化使用。如果想让你的程序实现国际化,那么就在用户所有可见的字符串处都使用QObject::tr()! 但是我们在使用的过程中通常是使用tr(),而并非是QObject::tr(),这是为什么呢?原来,tr()函数是定义在QObject里面的,所有使用了Q_OBJECT宏的类都自动具有tr()的函数。和connect
2020-11-26 13:29:54 347
原创 QT中布局器的addStretch函数使用效果
QBoxLayout中addStretch函数说明:void QBoxLayout::addStretch(int stretch = 0)Adds a stretchable space (a QSpacerItem) with zero minimum size and stretch factor stretch to the end of this box layout.函数的作用是在布局器中增加一个伸缩量,里面的参数表示QSpacerItem的个数,默认值为零,会将你放在layout中的空
2020-11-26 13:29:30 1015
原创 Qt5图形视图框架Graphics View
Qt5图形视图框架Graphics View一,Graphics View框架结构的主要特点二,Graphics View框架结构的三元素1.场景类:QGraphicsScene类2.视图类:QGraphicsView类3.图元类:QGraphicsItem类三,GraphicsView框架结构的坐标系统1.场景坐标2.视图坐标3.图元坐标一,Graphics View框架结构的主要特点Graphics View框架结构的主要特点如下。(1)在Graphics View框架结构中,系统可以利用Qt绘图
2020-11-25 10:33:46 1114
原创 Qt5.13监听鼠标滚轮的上下滚动事件QWheelEvent的angleDelta().y()
There are two ways to read the wheel event delta: angleDelta() returns the delta in wheel degrees. This value is always provided. pixelDelta() returns the delta in screen pixels and is available on platforms that have high-resolution trackpads, such as mac
2020-11-24 17:53:18 11210 3
原创 Qt的QVariant类中被禁止的枚举GlobalColor、BrushStyle、PenStyle和CursorShape
在Qt的qvariant.h中有这样一段话:// These constructors don't create QVariants of the type associcated// with the enum, as expected, but they would create a QVariant of// type int with the value of the enum value.// Use QVariant v = QColor(Qt::red) instead of QVar
2020-11-23 19:40:05 1902 1
原创 Qt5位置相关函数的区别概述
Qt提供了很多关于获取窗体位置及显示区域大小的函数,如x()、y()和pos()、rect()、size()和geometry()等。几种函数的主要区别如下:x()、y()和pos()函数的作用都是活的整个窗体左上角的坐标位置frameGeometry()函数和geometry()函数相对应。frameGeometry()函数获得的是整个窗体的左上顶点和长宽值,而geometry()函数获得的是窗体内中央区域的左上顶点坐标及长宽值。直接调用width()和height()函数获得的是中央区域的长宽
2020-11-23 10:23:39 778
原创 使用插入排序、归并排序对链表进行排序
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} * ListNode(int x, ListNode *next) : val(x), next(next)
2020-11-21 21:28:02 680
原创 Qt容器类QList、QLinkedList和QVector类
QList< T >是迄今为止最常用的容器类,它储存给定数据类型T的一系列数值,相对于其他Qt容器类,QList被高度优化。QList< T >维护了一个指针数组,该数组存储的指针指向QList< T >存储的列表项的内容。因此它提供了基于下标的快速访问。对于不同的数据类型,QList采取不同的存储策略:如果T是一个指针类型或指针大小的基本类型(即该类型所占的字节数和指针类型所占的字节数相同),QList会直接将数值存储在它的数组中。如果存储对象的指针,则该指针指
2020-11-11 12:08:52 1080
原创 字典序算法与下一个排列问题算法推导
字典序算法一.字典序基础二.字典序算法相关下一个排列问题算法推导算法过程求字典序全排列递归方法一.字典序基础字典序(dictionary order),又称 字母序(alphabetical order),原意是表示英文单词在字典中的先后顺序,在计算机领域中扩展成两个任意字符串的大小关系。 英文中的 字母表(Alphabet) 按照如下的顺序排列: ABCDEFG HIJKLMN OPQRST UVWXYZ abcdefg hijklmn opqrst uvwxyz
2020-11-10 16:02:45 468 1
转载 C/C++中#pragma once和#ifndef的使用和区别
在C/C++中,为了避免同一个文件被include多次,有两种方式:一种是#ifndef方式,一种是#pragma once方式(在头文件的最开始加入)。#ifndef SOME_UNIQUE_NAME_HERE#define SOME_UNIQUE_NAME_HERE// contents of the header...#endif // SOME_UNIQUE_NAME_HERE#pragma once// contents of the header...#ifndef的
2020-11-09 20:43:19 507
原创 C++11Lambda表达式(匿名函数)的基本构成和使用
C++11中的Lambda表达式用于定义并创建匿名的函数对象,以简化编程工作。首先看一下Lambda表达式的基本构成:[ 函数对象参数 ] (操作符重载函数参数) mutable或exception -> 返回值 {函数体}1. 函数对象参数;[ ],标识一个Lambda的开始,这部分必须存在,不能省略。函数对象参数是传递给编译器自动生成的函数对象类的构造函数的。函数对象参数只能使用那些到定义Lambda为止时Lambda所在作用范围内可见的局部变量(包括Lambda所在类的thi
2020-11-09 18:01:41 438
原创 Qt入门基础知识 pro项目文件、QApplication和信号和槽机制
Qt入门pro项目文件QApplication应用程序类信号和槽机制自定义信号槽信号槽的更多用法pro项目文件QT += core gui Qt包含的模块greaterThan(QT_MAJOR_VERSION, 4): QT += widgets //大于4版本以上 包含 widget模块TARGET = 01_FirstProject //目标 生成的.exe程序的名称TEMPLATE = app //模板 应用程序模板 Application
2020-11-09 17:15:46 1812
原创 Qt程序图标更改以及打包发布生成可独立运行的exe文件
程序打包发布程序图标更改程序打包发布使用Enigma Virtual Box软件打包程序图标更改首先将你需要更改的图标XXX.ico文件复制到工程目录下:然后在qt creator中打开.pro文件,在末尾处添加一行代码,h6.ico为我的ico文件名称:RC_ICONS = h6.ico点击编译或运行,之后可以在工程目录文件中看到生成的exe文件的图标已经更改:程序打包发布首先选择Release模式,编译运行。然后让工程文件在Explorer中显示,找到release文件夹
2020-11-09 11:54:27 894
原创 STL迭代器back_insert_iterator、front_insert_iterator和insert_iterator
模板使得算法独立于存储的数据类型。迭代器使得算法独立于使用的容器类型。迭代器类型输入迭代器输出迭代器正向迭代器双向迭代器随机访问迭代器迭代器具有层级结构:正向迭代器具有输入输出迭代器的全部功能,同时有自己的功能。双向迭代器具有输入输出迭代器的全部功能,同时还有自己的功能。随机访问迭代器具有正向迭代器的全部功能,同时还有自己的功能。每个容器都定义了一个类级typedef名称–iterator,因此vector< int >类的迭代器类型为vector< int &g
2020-11-02 20:53:23 730
原创 C++哈希表unordered_map的使用以及与map和hash_map的对比
哈希表c++中map与unordered_map的区别内部实现机理优缺点以及适用处map 优点map缺点unordered_map 优点unordered_map 缺点unordered_map是hash_map的替代名称hash_map原理unordered_map详解1. 原型2. 说明3. 容器属性4. 常用函数c++中map与unordered_map的区别内部实现机理map: map内部实现了一个红黑树,该结构具有自动排序的功能,因此map内部的所有元素都是有序的,对于map进行的查找,删
2020-11-01 15:46:41 8863
基于LPC算法的语音基频检测C语言相关代码整理
2022-04-08
点云处理-PCL-常用PCD格式和PLY文件
2022-04-06
Silicon Test and Validation.pdf
2021-08-21
Shmoo Plotting _ The Black Art of IC Testing.pdf
2021-08-21
China-software-copyright-master
2021-01-06
cmake_opencv450_mingw73_64_编译生成的动态链接库文件_install.zip
2020-12-20
cmake_opencv配置所需文件.zip
2020-12-19
公共管理硕士(MPA)学位论文开题报告模板.zip
2020-11-19
南京理工大学硕士论文开题报告模板.doc
2020-11-19
基于LPC算法的语音基频检测及CCS软件使用教程.zip
2020-10-17
FPGA实验-AM.zip
2020-10-17
Velodyne-LiDAR-VLP-16-User-Manual.pdf
2020-10-08
VeloView-3.5.3.zip
2020-10-02
基于线性调频信号的脉冲压缩处理(源码和实验报告).zip
2020-10-01
SR12_CCS_v3.3_SR_3.3.82.13.rar
2020-09-23
南京理工大学研究生电子对抗大作业.zip
2020-09-15
南京理工大学电子对抗课件.zip
2020-09-15
南理工射频电子线路课程ppt.zip
2020-09-15
南理工无线通信课程课件.zip
2020-09-15
无线通信仿真代码MATLAB实现.zip
2020-09-15
MIMO-OFDM-Wireless-Communications-with-MATLAB.zip
2020-09-15
calculator_wav.zip
2020-04-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人