- 博客(32)
- 收藏
- 关注
原创 QComBox自定义下拉面板高度不生效
设置ui->comboBox->setView(new QListView());QComBox自定义下拉面板高度不生效,例如QSS设置。
2024-11-25 15:29:24
98
原创 glsl着色器语言的内置一些函数和变量
textureLod(sampler, P, lod):从纹理采样器 sampler 中获取指定层次 lod 处的纹理坐标 P 处的颜色。faceforward(N, I, Nref):如果 dot(Nref, I) 小于0,返回 N,否则返回 -N。textureGrad(sampler, P, dPdx, dPdy):使用显式梯度进行纹理采样。mix(x, y, a):线性插值,返回 (1-a) * x + a * y。sign(x):返回 x 的符号(-1, 0, 1)。
2024-07-25 08:49:24
1247
原创 Qt5运行中文显示乱码问题(最新2024-6-14)
打开工具选项,设置红色部分为如图所示。(默认是目前存在了则保留)然后在包含中文的头文件中添加这行代码。
2024-06-14 10:21:08
361
原创 qt-material-widget库的使用
该组件库的下载地址:qt-material-widgets,下载完解压后,打开.pro项目。编译msvc或mingw生成的库文件。在项目头文件夹单击右键添加现有的文件夹,选择componets文件夹,.pro文件会自动添加.h和。将components文件夹复制到项目文件夹下,.pro文件添加。然后要用哪个组件添加哪个组件的头文件。
2024-02-18 19:26:46
1486
原创 linux的tcp通讯recv()函数接收大数据分包问题
之前写的这个函数 导致函数连接断开的时候才收到数据,卡了一天左右。误区在于先一直认为这个函数在接收len长度的时候,如果不足len,则返回实际接收长度,如果缓冲区没有数据,则返回-1,其实recv函数默认是阻塞模式,在阻塞模式下,如果缓冲区没有数据则会一直阻塞;如果将socket设置为非阻塞模式,则在缓冲区没有数据时才立即返回-1。查询后发现,recv(buf,len,0)这个函数默认是阻塞模式,在接收len长度的时候,如果不缓冲区不足len则阻塞,如果缓冲区为空也阻塞,直到缓冲区有len长度则返回。
2023-10-13 16:40:06
543
原创 串口发送数据ascii和hex的区别
串口发送可以包含ascii发送和hex十六进制发送,不管采用哪种方式发送,计算机内部都是以二进制发送的,ascii发送会将你发送的ascii字符转换为对应的ascii码,0-127之间,然后将对应的ascii码以二进制方式在底层发送出去出;而对于接收端来说,如果发送方以十六进制发送,接收方需要以十六进制接收,发送方以ascii发送接收方则以ascii方式接收。所以对于发送{0xff,0x01}这种数据就是发送的二进制数据,底层是一样的,所以发送方和接收方的底层都是11111111 00000001。
2023-10-12 18:36:58
3018
原创 linux socket tcp通讯接收分包问题
错误意识在于,recv()函数在缓冲区没有足够len长度的时候会阻塞,在缓冲区没有任何数据的时候也会阻塞,默认阻塞模式。而我刚开始以为recv在没有足够len长数据的时候返回实际接收长度,在没有数据的时候返回-1.
2023-09-30 17:14:42
131
原创 qt调用libusb库时 warning:LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
用vs修改如上红框中的配置 重新生成.lib库就可以了 默认是MT。虽然这个警告也可以正常运行,但是看着难受。
2023-09-15 14:48:11
423
原创 QT配置ffmpeg教程
然后qDebug()<<avcodec_version();运行 如果输出了一串数字就说明配置好了,那个数字是编码器的版本,如下。然后就可以写测试程序了,在代码中添加头文件,由于ffmpeg是C语言写的所以用 extern “C”{}包含头文件。然后将bin文件加的所有.dll动态库复制到qt编译后的debug或relese文件夹下。下载地址:https://www.gyan.dev/ffmpeg/builds/在.pro文件中添加以下代码,这个是为了包含.h文件路径和lib库。
2023-06-20 18:19:46
1260
1
原创 解决qt6mysql没有驱动问题
下面链接有qt各个版本的mysql驱动文件,不用编译,直接复制到qt文件下,具体目录可以网上查一下你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Co
2023-04-13 22:33:46
344
1
原创 2021-05-20
stm32 串口问题在学习串口接收发送的章节 发送通过senddata 发送成功 在接受的实验中 一直没有接收到 折腾了两天发现问题所在 把数据状态寄存器里的 flag 标志判断位RXNE 和 中断标志位RXN弄混了 ,导致函数用错,一直找了好久问题才发现 。。呼呼还有今天学到了 外设初始化配置 也不用单独写函数 可以直接在主函数体里直接写 不过就没那么清楚了 今天刚好520哦 加油!...
2021-05-20 17:15:02
59
原创 2021-05-06
这里写自定义目录标题前言一、指针?二、使用步骤1.引入库2.读入数据总结欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章
2021-05-06 17:43:35
610
原创 2021-05-01
菜鸟问答 嘻嘻 提前谢谢各位大佬作答初学stm32 遇到寄存器移位操作问题有点想不明白,例如左移2位 gpiob_ODR = 0<< 4为什么要写成gpiob_ODR &= ~(1<< 4)这样是为了其他位置0吗 上电默认值不就是0吗 为什么还要在写一边 没太明白 哪位大佬解释一下我是小白 勿见怪 嘻嘻!...
2021-05-01 21:32:53
89
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人