首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
QT atEnd一直false
2024-08-29
QT中的小细节
一 . QT4和QT5的区别(信号和槽):1. QT4: connect(button,SIGNAL(pressed()),this,SLOT(close())); /** * 优点 :写法简单 * 缺点: SIGNAL(), SLOT()是两个宏,将函数转换为字符串 * 编译时不做错误检查,影响程序的健壮性 */ 2. QT5 connect(button,&QPushButton::clicked,this,&Widget::close); /** * sender: 信号发出者
qt mvc3
前面两节讲的model是一维的,这次开始二维的也就是我们常说的Table,相对与list,我们多了一个列的概念. 下面讲解一个例子.我先说明一下我们这个例子,在程序目录下,我们有一个文本文件,其中存放的学生信息. 数据存放的格式 学号 姓名 性别 xxx xxx x 每个学生的信息占一行,现在我们需要将这个文件中的所有学生信息加载显示. 在例子中主要涉及这几个类,Student,FileReader和DataTableModel类. Student是学生实体类,FileRead从文件加载数据,后
第39课 Qt中的事件处理(下)
1. 事件的传递过程 (1)操作系统检测到用户动作时,会产生一条系统消息,该消息被发送到Qt应用程序 (2)Qt应用程序收到系统消息后,将其转化为一个对应的QEvent事件对象,并调用QObject::event()将其分发出去. (3)事件对应被分发到当前正在操作的窗口部件上,该窗口部件会调用QWidget::event()函数来处理,然后,在这个函数内部又会调用其他的子函数(如KeyPressEvent或mouseReleaseEvent)来进行具体的处理. (4)event函数处理完后,可
Qt字符串类——2. 查询字符串数据
(1)函数QString::startsWith()判断一个字符串是否以某个字符串开头.此函数具有两个参数,第一个参数指定了一个字符串,第二个参数指定是否大小写敏感(默认情况下,是大小写敏感的),例如: QString str="Welcome to you! "; str.startsWith("Welcome",Qt::CaseSensitive); //返回true; str.startsWith("you",Qt::CaseSensiti
年底奉献-QT编写视频监管平台(开源)
忙忙碌碌又是一年,算算自己毕业四年半,一直在现在这家公司做研发外加总经理助理,研发起初用的VB.NET,而后全面转为C#,最后又全面转为QT,都是由于项目需要,算下来自己搞QT编程也已经四年了,2010年开始接触QT并编写一些公司需要的辅助工具,其实搞程序的,我感觉绝大部分都是出于本身兴趣爱好,然后持之以恒的钻研,不断成长和进步. 项目需求:某区下面有几百所学校,每个学校都有若干台NVR或者DVR,每台NVR和DVR都挂接着N个IPC(摄像机)(包括网络摄像机和模拟摄像机),现在需要对所有学校的
Qt之QAbstractItemView视图项拖拽(二)
一.需求说明 上一篇文章Qt之QAbstractItemView视图项拖拽(一)讲述了实现QAbstractItemView视图项拖拽的一种方式,是基于QDrag实现的,这个类是qt自己封装好了的,所以可定制性也就没有了那么强,最明显的是,这个类在执行exec方法后,mouse系列的回调接口就被阻塞了,随之而来的问题就是拖拽时item项没有了hover特性,为了解决这个问题,我们就不能使用QDrag类来实现拖拽了,这也是这篇文章我要讲述的内容. 二.效果展示 如图1是demo的效果展示,比较丑,
Qt之QAbstractItemView视图项拖拽(一)
一.需求说明 最近在搞视图项的拖拽,也上网查了一些资料,好多的文档都是一样的,只是被不通的网站所收录了(也有可能是被爬过去的,不明所以),不过也有一些文档写的不错,不过就是太简易,都是点睛之笔,总之功能还是勉强可以实现,加之比较零散,刚好我自己也因为这个需求写了一个demo,因此我就把自己写这个demo的过程分析给大家,希望能帮到有这个需求的小伙伴. 二.效果展示 如图1是demo的效果展示,比较丑,如果加上优秀的qss,那必然能让人眼前一亮. 图1 ListWidget拖拽 三.实现思路 继承
Qt 无边框窗体改变大小 完美实现(全部自己实现)
近期,做项目用到无边框窗体,令人蛋疼的是无边框窗体大小的改变要像右边框那样,上下左右四周,而且要流畅. 网上也找了些代码,发现居然还要连接到windows事件,这显然不合常理,后来自己新建了demo,写了一个小时,问题太多了,扔一边先不管了. 今天需要改进UI界面,没办法了,重新整理了下思路,没想到做出来了.下面来分享下实现的过程,也许是菜鸟专栏,高手勿喷~ 1.首先大家要了解各九宫格的概念 一个窗体可以被划分为上.下.左.右.左上.左下.右上.右下.中间,除了中间部分,其他都需要写程序处理.
【Qt】Qt之自定义界面(窗体缩放-跨平台终极版)【转】
简述 通过上一节内容,我们实现了窗体的缩放,功能很不错,但是很遗憾-不支持跨平台!如果对于多平台来说,这是一个硬伤,所以,我们急需要一个能够支持跨平台的实现方案. 在网上看到过很多不同的实现方式,多多少少会存在一些问题-要么融合度太高.要么不能很好地进行移动.缩放.基于前人的分享与总结,最后,我花了很长时间来完善.独乐乐不如众乐乐,既然纯开源-那就全部分享出来. 简述 效果 窗体缩放 实现 接口说明 使用方式 平台支持 效果 窗体缩放 实现 frameless_helper.h #ifndef
【QT】计时器制作
应小伙伴的要求,做一个小计时器.功能是点击开始就从00:00:00开始计时,点击暂停就暂停计时,点击停止就停止计时. 界面如上图,使用ui设计师直接拖的.按钮和图标的图片都是网上下载的.用美图秀秀抠成了透明的,看起来会好看一点. 整体代码挺容易的,就是设一个定时器.代码如下: mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QDateTime> #incl
Qt之自定义界面(窗体缩放-跨平台终极版)
简述 通过上一节内容,我们实现了窗体的缩放,功能很不错,但是很遗憾-不支持跨平台!如果对于多平台来说,这是一个硬伤,所以,我们急需要一个能够支持跨平台的实现方案. 在网上看到过很多不同的实现方式,多多少少会存在一些问题-要么融合度太高.要么不能很好地进行移动.缩放.基于前人的分享与总结,最后,我花了很长时间来完善.独乐乐不如众乐乐,既然纯开源-那就全部分享出来. 简述 效果 窗体缩放 实现 接口说明 使用方式 平台支持 效果 窗体缩放 实现 frameless_helper.h #ifndef
Qt树形控件QTreeView使用1——节点的添加删除操作 复选框的设置
QtreeView是ui中最常用的控件,Qt中QTreeWidget比QTreeView更简单,但没有QTreeView那么灵活(QTreeWidget封装的和MFC的CTreeCtrl很类似,没有mvc的特点). 1. QStandardItemModel在QTreeView中的使用 使用QTreeView的对应模型是QStandardItemModel,这个是Qt对应ui界面最有用的模型,它可以用于树形控件.列表控件.表格控件等等和条目有关的控件.QStandardItemModel用于列表
Qt自定义带游标的slider,在滑块正上方显示当前值(类似于进度条,用一个额外的QLabel冒充QSilder的一部分,然后move就行了)
首先自定义QSlider的子类MyCustomSlider,如下所示. mycustomslider.h #ifndef MYCUSTOMSLIDER_H #define MYCUSTOMSLIDER_H #include <QSlider> #include <QLabel> #include <QMouseEvent> class MyCustomSlider : public QSlider { public: MyCustomSlider(QWidget *pa
Qt浅谈之四十五QSplitter实现自由伸缩滑动窗口
一.简介 最近看到一篇Qt实现伸缩滑动的窗口的文章,但其代码不完整.便在此重新书写了完整的代码,并开源出来.窗口的中央有滑动条可以动态改变子窗口的大小,隐藏的按钮可以快速伸缩子窗口.其效果图如下: 二.详解 1.代码 (1)slidingwindow.h #ifndef SLIDINGWINDOW_H #define SLIDINGWINDOW_H #include <QtGui> class SlidingWindow : public QWidget { Q_OBJECT public:
Qt自定义带游标的slider,在滑块正上方显示当前值(非常有意思,继承QSlider之后增加一个QLabel,然后不断移动它)
首先自定义QSlider的子类MyCustomSlider,如下所示. mycustomslider.h #ifndef MYCUSTOMSLIDER_H #define MYCUSTOMSLIDER_H #include <QSlider> #include <QLabel> #include <QMouseEvent> class MyCustomSlider : public QSlider { public: MyCustomSlider(QWidget *pa
简单的QT绘图程序(把全部的点都记录下来,然后在paintEvent里使用drawLine函数进行绘制,貌似效率很低。。。)
当初在学MFC时,最经典的入门实例就是绘图程序,其作用相当于Console Application 下的Hello World了吧. 如今入手QT,不免怀旧,于是也写了一个绘图程序,虽然简单,却也是入门必备啊. 环境 OS : Ubuntu 11.04 IDE :Qt Creator 2.2.1 Qt : 4.7.4 (32bit) Complier: gcc 1. 新建一个空白Qt工程 文件--> 新建工程或项目-->其它项目-->空的Qt项目 比如命名为Qt_Instance_Ex
QT:使用“状态模式”绘制界面
QT与很多GUI库不同(如MFC),它不能随时随地地在界面上画图,只能在界面类的painterEvent中画图,如此一来,想在绘制QT界面时使用状态模式(GOF的23种设计模式之一)就有点困难了,作为解决方案,我先把要界面上的图片绘制在一张图片上(QPixmap),然后再在painterEvent中将Pixmap“画”到界面上.以下是这种方法的一个小例子. 截图: 源代码: #include <QtGui> //状态类的基类,定义了各个公用接口, //其中,SetPixmap是一个纯虚接口 c
Qt 圆角矩形+鼠标左键拖动窗口
#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: ); ~MainWindow(); protected: void paintEvent(QPaintEvent *event); void mousePressEvent(QMous
Qt实战之开发软件数据获取助手(eventFilter处理鼠标按下,event处理鼠标松开)
前段时间,受朋友委托,需要做一个能够获取别人软件文本框中内容的助手.当然这需要调用win api来解决问题.一开始,我想都没想,就用getWindowText()....居然没用,好郁闷.于是查msdn..发现关于返回值,是这样写的 Return Values The length, in characters, of the copied string, not including the terminating null character, indicates success. Zero
简易视频播放器2 (基于Qt、opencv)
因项目需要,需要实现一个对以保存的监测视频快速查看功能. 查询网上一些资料,初步简易的实现了一下. 实际效果图: 该程序基于Qt5.4,opencv248,开发环境为win8.1 结构为: videoplayer.ui videoplayer.h videoplayer.cpp 由类 class VideoPlayer : public QWidget 实现 播放.暂停.进度条.播放速度等功能 代码 首先是界面: 即 ui_videoplayer.h /*********************
Qt 无边框窗体改变大小 完美实现
近期,做项目用到无边框窗体,令人蛋疼的是无边框窗体大小的改变要像右边框那样,上下左右四周,而且要流畅. 网上也找了些代码,发现居然还要连接到windows事件,这显然不合常理,后来自己新建了demo,写了一个小时,问题太多了,扔一边先不管了. 今天需要改进UI界面,没办法了,重新整理了下思路,没想到做出来了.下面来分享下实现的过程,也许是菜鸟专栏,高手勿喷~ 1.首先大家要了解各九宫格的概念 一个窗体可以被划分为上.下.左.右.左上.左下.右上.右下.中间,除了中间部分,其他都需要写程序处理.
热门专题
shell crul结果乱码
作IO操作时程序崩溃
使用cmd打开jupyter
未找到具有固定名称 mysql
audio 微信中自动播放 安卓
时分判断开始时间小于结束时间
linux 开机自启动.desktop文件
sqlsever 字段名跟语法冲突
http响应体 40MB
在winform 窗体中实现分页
np log变换还有什么变换
新华三 安装centos U盘启动
Collections方法
python根据时间创建日志
latex中如何使一个单次加粗
vmware虚拟机 WINPE问题
moba资料.unitypackage
txt在linux下乱码
查看logstash配置是否正确
java请求国密HTTPS接口