给python漫画分集标题下载工具添加线程_python pyside6,下载器-爱代码爱编程
前情概要: 上一章,我们给这个python漫画分集标题下载工具添加了Qt界面,使用的是PySide6,大家看源码或许就可以看出来了,除了python语法不同之外,整个Qt库的使用和C++的使用几乎没什么大的改变。所以,如果你不知道在python3里Qt怎么使用,那么你完全可以试试直接用C++Qt的写法,再根据pycharm的代码提示,就可以很容易地进行Q
代码编织梦想
前情概要: 上一章,我们给这个python漫画分集标题下载工具添加了Qt界面,使用的是PySide6,大家看源码或许就可以看出来了,除了python语法不同之外,整个Qt库的使用和C++的使用几乎没什么大的改变。所以,如果你不知道在python3里Qt怎么使用,那么你完全可以试试直接用C++Qt的写法,再根据pycharm的代码提示,就可以很容易地进行Q
问题描述: 嵌入式系统中经常会遇到各种环境问题,什么fb,xcb,gstreamer,libxxx not found 啥的。 很多时候都是因为用了些自制的rootfs文件系统,用了自己交叉编译的Qt版本。 一般其实建议大家用Ubuntu,Debian官方已经编译好了的arm版Qt,这样问题少,以后可以扩展其他应用,更加灵活。只要安装一个apt即可,
在编译一个cmake项目的时候,需要用到ECM,于是使用vcpkg install ecm,结果安装成功,但是cmake依然不识别,find_package报错,找不到ecm位置,很显然,vcpkg安装ecm到packages路径下的时候,这个packages路径并没有被cmake查找到 这时候,我们需要在CMakeList文件中添加路径说明,也就是用
因为最近在操作文件的相关属性,所以顺便将QFileInfo多看了几眼,发现很多函数平时都给忘了,譬如basename(),suffix() ,很常用,但是有时候不记得了,使用QString的split去操作字符串也行,只是没那么方便而已,所以总结一下,记录下来。 1.获取文件名的后缀: QFileInfo fi("/tmp/archive.tar.g
Qt5/6 中的btscanner手机蓝牙扫描程序,这个程序是Windows,Android和Linux都可以运行的。 我们知道Qt是跨平台的C++框架,一份代码能够在很多个系统平台上编译运行,但,这是有前提的,那就是不涉及该系统下的驱动级别API,简单地说就是,如果你的程序是完全凭借Qt本身类接口就能实现的功能,那么,你的程序就是跨平台的;而如果你的
CMake find_package搜索路径的顺序为: 首先cmake自身的环境变量 CMAKE_PREFIX_PATH, CMAKE_FRAMEWORK_PATH, CMAKE_APPBUNDLE_PATH然后是系统环境变量: <package>_DIR, CMAKE_PREFIX_PATH, CMAKE_FRAMEWORK_PATH, C
在Qt中使用grpc,对于想要开发分布式应用,尤其是像聊天程序,监控,存储之类应用,都非常常用。相对于linux下本地的dbus连接来说,grpc远程调用,可以类比于本地和远程,那么接下来,我们使用grpc中的cpp例子keyvaluestore来讲讲怎么在windows下QtCreator7.0中导入grpc示例; 首先,创建一个子目录项目。 cma
早在Qt5.12的时候,Qt就已经支持将Qt中的gui程序转为js web程序,你只需要将生成的js文件和其他一些bootstrap,jQuery等js一样嵌入网页中调用,就可以看到原本在Qt中运行的程序一下可以在浏览器上跑了。这种事情说起来还挺厉害的,但其实这也符合Qt的野心和未来展望的,就如同它把程序跑到苹果,安卓,嵌入式系统等等一系列系统上一样,浏
如果在qt QML中使用ListView时出现卡顿情况,可能是因为渲染大量的数据或者在模型中进行复杂的数据处理。以下是常用的解决方法: 1. 设置ListView的缓存策略:通过设置ListView的cacheBuffer属性为适当的值,可以提高滚动的流畅性。例如,将cacheBuffer设置为视图的高度的两倍可以提前预加载数据。 ListView {
qt QML中设置RadioButton的字体颜色,可以使用RadioButton的label属性来设置文本的样式。下面是一个示例代码: import QtQuick 2.6 import QtQuick.Controls 2.2 import QtQuick.Controls 1.4 as Controls1_4 import QtQuick.Cont
在Qt中,`setFixedSize()`和`resize()`都是用于设置窗口大小的两个方法,它们的区别如下: 1. `setFixedSize()`方法会将窗口的大小固定为指定的宽度和高度,不允许用户手动调整窗口大小。这意味着无论用户如何尝试调整窗口大小,它都会保持固定的尺寸。这个方法通常用于需要固定大小的窗口,例如自定义的对话框或固定大小的小部件。
问题描述: OpenGL最近比较火,我们也来一起学习学习吧。不然没法出来混了。 首先用OpenGL画个矩形显示。系统是Ubuntu。用的QtCreator,创建纯C++项目。 解决办法: 代码如下: #include <iostream> #include <GL/glut.h> using namespace s
问题描述: 最近发现很多人都喜欢用Lamda表达式了,至于他们到底知不知道自己用的是什么意思,那就另说了。 虽然我个人并不太喜欢,因为很多地方没法像以前信号和槽那样清晰了,而且很多生成UML的软件估计也不支持解析转成对应的序列图啥的。 但是这个lamda写法确实挺方便的。用习惯了,倒是也不错。 就跟Java Android里面那个setOnclic
问题描述: 场景1:我的可执行文件设置生成路径为某个最终目录的bin目录下,当我要修改某些config.ini或者xxx.json,或者一些qss,css文件的时候,我想直接在构建的时候,Qtcreator帮我直接拷贝过去,而不需要我总是执行命令去复制。 场景2:当我在可执行程序生成前后,需要执行一些其他各种骚操作。就像Debian安装包那样,post
在Ubuntu下,你可以使用以下代码来获取MAC地址: #include <iostream> using namespace std; #include <iostream> #include <fstream> #include <string> std::string getMACAddress
在Qt中进行性能优化时,可以考虑以下建议来提高应用程序的性能: 1. 使用合适的数据结构:选择适当的数据结构对于提高性能至关重要。例如,使用QList而不是QVector来存储大量数据时,可以提高插入和删除的性能。另外,使用QHash或QMap来快速查找和访问数据。 2. 避免频繁的内存分配和释放:频繁的内存分配和释放会导致性能下降。尽量避免在循环或频
问题描述: 前面提到过,使用QSqlTableModel的canFetchMore()来获取超过256行的数据库数据行数,但是中间使用过程中,发现这个会导致界面卡顿。所以得放弃。 解决办法: 当数据量过大,且处于数据通信过程中的时候,譬如,can通信,串口,TCP网络之类的时候,我们需要直接查询数据库获取总行数。 当数据库表的行数超过10000
问题描述: QT5中的软键盘qvirtualkeyboard很好用,很多人开发嵌入式端应用的时候都会用到。 但是偶尔也会出现问题,譬如,我这边在Arm系统上跑着程序的时候,点击用户编辑框,输入法弹出,但是再次点击密码输入框,连程序都给我崩溃了。 只是提示错误:void ime_pinyin::MatrixSearch::init_user_dicti
问题描述: Qt插件的编写,有两种方式,一种是直接通过自定义接口类Interface来实现,一种是通过QtCreator自带的插件模板来创建。 这里我们先来实现第二种。 功能为点击主界面的按钮,显示插件界面。(插件和开发库一样,什么都可以放进去,只不过就是封装成方便调用的模块) 解决办法: 首先,我们通过QtCreator,创建新的项目,选择
问题描述: 在编译一些大的Qt程序代码的时候(其他程序也类似),由于系统里面打开的其他程序多,耗费内存比较大。 即使在任务管理器里看上去内存还有好几个G,但是QtCreator运行时却提示内存不够用。 解决办法: 从性能优化的角度来看(仅供学习学习): 这个错误通常是因为编译器无法为程序分配足够的内存而导致的。解决方法如下: 1. 增加系统可用