自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 Qt区分鼠标按下时移动的是哪个多边形

给每个多边形分配一个唯一的标识符,并在鼠标事件中使用这个标识符来识别多边形。:为每个多边形分配不同的事件处理器,或者在同一个处理器中使用逻辑来区分。:在鼠标按下事件中,检查鼠标的位置是否在某个多边形的边上或顶点上。:例如,可以使用图形的颜色、层级或其他属性作为区分依据。来绘制这两个多边形,并重写了鼠标事件来处理拖动逻辑。

2024-07-17 10:34:07 677

原创 Qt鼠标拖动线条组成的多边形移动

函数用于检测鼠标点击是否在多边形的边上,如果检测到鼠标在线上,就记录下顶点索引和偏移量,并在鼠标移动时更新顶点位置。中,如果鼠标按钮保持按下状态,则根据鼠标的当前位置和之前计算的偏移量更新顶点的位置。:在鼠标按下时,计算鼠标位置和被按下顶点之间的偏移量。:如果鼠标在线上,记录下被按下的顶点的索引。来绘制多边形,重写了鼠标事件来处理拖动逻辑。:定义一个顶点列表,存储多边形的每个顶点。中,检测鼠标是否在多边形的任意一条边上。,它包含一个多边形顶点列表。:在顶点移动后,调用。方法来请求重绘控件。

2024-07-16 16:34:09 463

原创 Qt判定鼠标是否在该多边形的线条上

遍历多边形的每条线段,使用点到线段距离的公式计算鼠标位置到每条线段的距离。:如果距离小于某个阈值(例如像素单位的5或10),则可以认为鼠标位于线条上。函数检查鼠标位置是否在指定的阈值内。如果是,则可以认为鼠标位于线条上。是多边形顶点的数组。在实际使用中,你需要将这些变量替换为你的具体值。)是一个敏感度参数,你可以根据实际需要调整这个值。函数计算了给定点到线段的最近点的距离。函数遍历多边形的所有线段,并使用。是鼠标事件提供的当前鼠标位置,方法获取鼠标的当前位置。:在鼠标事件中,使用。

2024-07-16 16:26:32 878

原创 C++智能指针的用法

智能指针是C++11引入的,用于自动管理内存的对象。它们帮助开发者避免内存泄漏和其他与动态内存分配相关的问题。推荐使用标准库中的智能指针,因为它们提供了更好的内存管理功能。

2024-07-13 15:08:33 277

原创 QLineEdit文本框及其文字爆红效果

当文本框文字变化时,需要发送一个文字变化的信号,当所属条件不达标时,来调用该效果。例如一个文本框中的内容大于90时,调用此效果。

2024-07-13 10:53:58 208

原创 在Qt中,如果你想要限定QLineEdit文本框中浮点数的取值范围

你可以使用QLineEdit的setValidator方法来设置一个合适的验证器。Qt提供了几种内置的验证器,例如QDoubleVa。用户在文本框中输入的值将被限制在这个范围内,如果输入的值超出这个范围,文本框会高亮显示错误,并且不会接受超出范围的输入。默认情况下不允许输入负号,如果你希望允许负值,需要在构造函数中设置。设置了一个浮点数验证器。在这个示例中,我们创建了一个。这样,用户就可以输入负数了。

2024-07-13 09:30:07 357

原创 QVector 和 QList用法

都提供了丰富的方法来操作容器中的元素,你可以根据实际的需求和场景选择使用哪一个。通常,如果你需要频繁地访问元素,是一个双向链表,提供快速的插入和删除操作。它的内存使用不是连续的,适合插入和删除操作频繁的场景。是一个动态数组,提供快速的随机访问能力。它的元素存放在连续的内存块中,适合读取操作频繁的场景。在这两个示例中,我们展示了如何创建容器、添加元素、访问元素、修改元素、遍历容器、查找和删除元素。如果你需要频繁地在容器中插入或删除元素,

2024-07-11 08:24:31 213

原创 QJson的介绍及用法

Qt提供了`QJsonDocument`、`QJsonObject`、`QJsonArray`、`QJsonValue`等类来处理JSON数据。Qt的网络模块可以处理JSON数据,使用`QJsonDocument`类可以轻松地将JSON字符串转换为Qt的数据结构。Qt应用程序可以使用`QJsonDocument`和`QJsonObject`等类来读取和解析JSON格式的配置文件。许多第三方服务和API使用JSON作为数据交换格式,Qt应用程序可以通过HTTP请求与这些服务交互,并处理返回的JSON数据。

2024-07-09 18:34:44 198

原创 异常Microsoft C++异常:decaf::util::NoSuchElemException,位于内存位置)x000000E695BFD560处。异常:Microsoft C++异常

Ox00007FFD08B0F39C处位于(comm_monitor.exe中)引发的异常:Microsoft C++异常:decaf::util::NoSuchElemException,位于内存位置)x000000E695BFD560处, Ox00007FFD08B0F39C处位于(comm_monitor.exe中)引发的异常:Microsoft C++异常:decaf::lang::exception::ClassCastException,位于内存位置x000000E6959FF120处。

2024-07-09 18:02:45 326

原创 VS2017 LNK1104: 无法打开文件*.exe

打开电脑的任务管理器,在后台找到该exe文件,结束掉。

2024-07-09 14:54:52 510

原创 VS2017 LNK1104 LNK2001 LNK2019动态库链接问题,无法解决的外部符号

5.点击常规查看附加库目录是否到本项目的debug目录或项目exe生成的同一目录下。3.确定配置是Debug还是Release,平台是否为x64或你的要求。7.连接器的输入下,查看附加依赖项加入所需lib文件。6.将所在库(dll,lib文件)加入在目录下。8.确定头文件引用目录路径正确即可。4.在配置属性中点击展开连接器。1.打开解决方案资源管理器。2.右击项目,点击项目属性。

2024-07-09 14:45:06 186

原创 Qt中让圆点沿直线移动的动画效果

其中开始结束移动按钮等,参数(速度,角度)自己定义。

2024-07-09 14:31:23 152

原创 QRegExp 类的用法

你可以设置一个新的正则表达式,也可以获取当前的正则表达式。: 你可以在更长的文本中搜索匹配项,并且获取匹配项的位置。定义了捕获组,你可以使用它们来提取字符串的子部分。对象来检查一个字符串是否与正则表达式匹配。对象,例如使用一个正则表达式字符串。: 你可以通过不同的方式创建。是一个验证器,可以用来限制。或其他输入字段的输入格式。: 正则表达式中的括号。来替换文本中的匹配项。

2024-07-09 14:09:53 322

原创 在QMap地图上的线段橡皮筋特效,并在线段右端随时跟随移动文本

何为橡皮筋特效,即为按下鼠标拖动时,以刚开始按下的点为中心点,拉出一条直线,随鼠标拖动来随时改变(可随时拉长拉短改变方向)。当松开鼠标时线段消失。鼠标释放时文本跟随线段一起消失可以在mousereleaseevent函数中加入m_textItem->hide();该函数displayString(m_startPoint,currentMapPoint);若要在线段右端显示文本,将该函数加入cpp,并在mouseMoveEvent函数中引用。该特效的重点在于重写鼠标事件。至此橡皮条特效已实现。

2024-07-08 16:14:32 222

原创 Qgs第三方库中的地图上对多边形进行旋转

假设该多边形是由本作者前两篇文章中多边形方式所画,但不仅限于该方式。

2024-07-08 15:21:50 124

原创 Qgs第三方库中删除QMap的相关操作

注:具体的接口、类、变量等要根据每个人区分改变。

2024-07-08 15:05:35 99

原创 Qgs画弧##Qt

通过定义一个矩形,从矩形两端点画弧。

2024-07-08 14:43:55 142

原创 Qgis第三方库的多边形画图

至此可在Qgis第三方库形成一个多边形,其中点自己任意定义。

2024-07-08 14:31:26 177

原创 vs2017打不开qt的ui文件解决方案

右键ui文件——打开方式——添加——如图所视,并设为默认。

2024-01-30 11:50:25 445 1

原创 Qt对ui控件的勾选note

如以上代码,res点击为应true,但程序断点后发现res为false;实际上应对该控件的ui进行checkable勾选,即可解决错误。

2024-01-25 17:23:10 405

原创 Qt中创建信号映射器(将菜单中所点窗口设置为活动子窗口)

【代码】Qt中创建信号映射器。

2024-01-25 15:33:54 416

原创 QString转QByteArray,const char*

2024-01-20 12:57:23 382

原创 QString 类隐式共享:隐式数据共享机制去最大化资源有效利用和最小化复制克隆操作。

构造s1:

2024-01-20 12:55:57 373

原创 terminate called after throwing an instance of ‘std::bad_alloc‘ what(): std::bad_alloc

QButtonGroup *m_btnGourps[9]中。1.bool定义的方法中缺少返回值return;中把[8]改为[循环体定义的参数]运行时未new,应添加。若已添加则为运用错误。

2024-01-17 15:16:28 916

原创 程序异常结束the process was ended forcefully. qt

有时debug反应不过来,需要重新构建。但在cpp中没有new一个新的对象。1.右击项目,重新构建运行。

2024-01-16 17:50:45 473 1

原创 Qt C++中QMessageBox::information报错

原因是未加头文件。

2024-01-16 14:55:40 596 1

原创 计算机网络基本原理。在局域网内建立三个应用服务,分别是DNS服务、WEB服务、FTP服务。

开始——管理工具——打开DNS——右键正向查找区域,新建区域(区域名称fhb123.cn)——右键区域,新建主机(名称 www, IP地址为本机的IP地址)添加主机——点击本地连接——点击属性——将首选DNS服务器地址改为本机IP,点击确定——功能键+R打开cmd——输入nslookup测试DNS正向查找链接情况(结果均为本地IP)——客户机本地连接属性——将首选DNS服务器地址改为主机IP——打开浏览器输入域名。2、建立各小组的dns域名(t*.gl.sdut.edu.cn)3、建立各小组的web网站(

2024-01-15 17:35:19 494

原创 C++函数模板语法中 类重载的用法

/注意此时要进行运算符重载。

2024-01-15 17:22:29 362

原创 对宏定义的名称进行判断,不可加“ ”

ret = true;}//这是错误写法ret = true;}//这是正确写法。

2024-01-15 15:47:32 360

原创 LNK2001 无法解析的外部符号 “public: virtual float __cdecl ODU::getRxL(void)“ (?ge

在多态继承中,说明子类继承的基类方法 virtual getRxl()并没有在基类.cpp中实现。return rxL;应在cpp中检查,对该方法进行具体实现。

2024-01-15 15:00:07 453

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除