C++ Qt
文章平均质量分 87
Oo安暖oOo
倾心相遇,安暖相陪。
展开
-
Qt 鼠标在窗口外区域点击时关闭窗口
鼠标在某窗口外区域点击时,关闭该窗口。想要实现这样的功能,大致有以下几种思路:重写鼠标点击事件 (mousePressEvent()),若鼠标位置不在该窗口区域内时,关闭窗口 重写焦点失去事件 (focusOutEvent()),若窗口失去焦点,关闭窗口 设置窗口属性为Qt::Popup,可自动实现窗口外点击关闭窗口this->setWindowFlags(Qt::Popup);Qt::PopupIndicates that the widget is a pop-up top-.原创 2021-07-27 12:01:48 · 3604 阅读 · 0 评论 -
QMetaEnum: C++ 中将枚举值自动转换为字符串
当我们需要在日志中输出枚举类型的信息时,如果只记录一个数字,查看日志时就需要再去查找这个枚举值的意思,不直观,不方便,我们会希望可以直接输出这个枚举值对应的字符串。比如下面这个枚举 Color,我们该如何将枚举值 Red 转化为字符串 “Red”?enum Color{ Red, Orange, Yellow, green };# 运算符一种最直接的方法是:使用 map 或者 list 之类的容器做一个映射。还有一个更简单的做法,我们可以借助宏 (macro) 的 # 运算符 (Stringi原创 2021-07-11 20:28:12 · 2182 阅读 · 0 评论 -
Qt Widgets 之 QDockWidget(停靠窗口)
在 Qt 中,停靠窗口 (dock window) 都是QDockWidget 的实例,可以停靠在 QMainWindow 的中央部件 (central widget) 的上下左右四个区域,停靠的 QDockWidget 没有框架,有一个较小的标题栏;也可浮动出来作为独立窗口。Qt 提供了很多相关示例,其中Main Window最为全面详细,我们今天就就着这个示例研究一下 QDockWidget 的用法及特性。.......原创 2021-07-10 23:41:17 · 3440 阅读 · 0 评论 -
Qt 5 下载与安装详解
下载地址1:https://www.qt.io/download下载地址2(推荐):http://download.qt.io/原创 2021-06-23 22:41:25 · 8770 阅读 · 1 评论 -
Qt 内置图标一览表
在 GUI 编程时,经常会需要一些小图标,如果直接去网上找现成的,可能有版权问题,自己做的话又麻烦,耽误时间。其实 Qt 有很多内置的图标可供我们使用,使用 QStyle::standardIcon() 即可获得这些内置图标。原创 2021-06-06 18:30:23 · 2908 阅读 · 2 评论 -
QVariant :在C++中实现python的字典功能
在 python 中,字典是一种可变容器模型,可存储任意类型对象。字典的值可以取任何数据类型,键必须是不可变的,如字符串,数字或元组,例如:student_aa = {'name' : 'Kristen', 'age' : 18, 'course' : ('Chinese', 'Mathematics', 'English'), 'family' : {'father' : 'ff', 'mother' : 'mm'}}如果我们需要将这种 python 代码转化成 C++,该怎么做呢?这时就可原创 2021-05-23 17:36:53 · 1158 阅读 · 0 评论 -
Qt 事件处理机制 (二):事件过滤器
事件过滤的方法:installEventFilter(),指定的过滤器对象在其 QObject::eventFilter() 函数中接收目标对象的事件。 事件过滤器可以在目标对象之前处理事件,从而使它可以根据需要检查和丢弃事件。 可以使用 QObject::removeEventFilter() 函数删除现有的事件过滤器。 notify()我们还使用上一章的例子( MyWidget ),来观察事件的传递,窗口如下。为 w0安装事件过滤器 w2,然后重写 eventFilter() 函数,..原创 2021-05-13 21:50:24 · 402 阅读 · 3 评论 -
Qt 事件处理机制 (一):事件处理器
上一篇翻译了Qt 关于消息体制的文档,通过这个文档可以知道,如果想要拓展某个类的功能,我们可以继承这个类,在某个虚函数中实现需要拓展的内容,并调用基类的这个虚函数,以保留其他情况的默认处理。结合Qt 文档, 我们做个实验,自定义Widget,继承自QWidget,在 mousePressEvent() 这个虚函数中打印一些信息,实例化几个Widget,并依次嵌套,代码如下:Widget::Widget(int index, QWidget *parent) : QWidget(paren..原创 2021-04-19 23:07:03 · 495 阅读 · 0 评论 -
Qt文档之事件体系 (The Event System)
本文译自 https://doc.qt.io/archives/qt-4.8/eventsandfilters.htmlQt的文档做的很好,功能都写的都很清楚,我们平时遇到什么问题,都可以去查看相关文档。以下是Qt文档中对于其事件体系的描述。In Qt, events are objects, derived from the abstractQEventclass, that represent things that have happened either within an app..翻译 2021-04-19 23:08:03 · 311 阅读 · 0 评论