
QT&PyQt
QT和PyQt两个不同的平台写
YH_24H
学无止境!!---时间太短,要求挺多,速学速用,速用速忘,忘了再学。所以笔记很重要。
展开
-
QFileSystemModel
pyqt下创建文件夹,并自定义输入和缺省值(QFileSystemModel的用法)1. 获取指定的路径内容并显示 self.sample_type = QTreeView() fileDir = r'./db/sample_data' self.sample_type.setHeaderHidden(True)#不显示表头 self.sample_type.setColumnHidden(1,True)#不显示行头 self.Dirmodel = QFileSys原创 2021-01-22 13:42:48 · 1032 阅读 · 0 评论 -
pyqt 信号槽 判断信号发出者(sender)
1qt的信号槽除了一对一也可以一对多,比如多个按键的click信号链接一个槽函数。这个收就需要判断是哪一个按键发出的信号2sender()在QT里的原型是QObject::sender(),也就是对象,实例化的对象可以发送信号,返回发送信号的对象的指针,返回类型为QObject *。3pyqt里的话用起来很方便,直接self.sender()就可以直接得到了if self.sender()== 对象:判断就行4 例子class Table(QWidget):#表格 def __ini原创 2020-11-16 13:36:12 · 7830 阅读 · 0 评论 -
C语言DLL封装DLL,嵌套封装DLL
C语言DLL封装DLL,嵌套封装DLLctypes没能解决c_int类型会变成c_long类型这个问题。所以调库失败,有大手子可以教教我 x = c_int(0) x.value=1 print("type(x) is "+str(type(x)))type(x) is <class 'ctypes.c_long'>经过大佬的建议,重新封装原有的库,再嵌套一个DLL库,并再c环境里转换类型目前有的文件,还挺多SI_errors.hSI_sensor.hS原创 2020-08-15 22:35:04 · 1155 阅读 · 0 评论 -
pyqt(python)下导入opencv
明确要安装的东西在python下使用的opencv库我们一般称CV2,基于对象,cv应该是基于过程,像C语言那样。要想在pyqt里使用opencv,必须安装opencv-python的库,要和自己的python版本对应。本机环境:vscode下的虚拟环境(相对来说多做一步,复制文件而已)pyqt5python3.6.5所以我需要下载支持cp36的opencv包(cp36值得就是python3.6),查看对应版本的话去这个网址.然后顺便去下载一个whl文件。后面安装,这里有个百度云链接 提取码:原创 2020-08-13 21:54:59 · 965 阅读 · 0 评论 -
python调用c语言的库(动态库DLL)
@真开心啊,聚精会神找一天错误没找到,看个视频摸摸鱼就找到了首先要明确的怎么导入项目所需,需要使用pyqt写界面,然后里有涉及电机和摄像头的调用,底层驱动是c语言写好了,并导出了动态库dll文件。导入方法可以使用ctypes和cffi方法导入,不过好像资料都不多我用的是ctypes在python代码的头部导入库import ctypesfrom ctypes import *AMC = ctypes.cdll.LoadLibrarylib_amc = AMC("./driver/amc原创 2020-08-12 22:21:47 · 1348 阅读 · 0 评论 -
pyqt显示圆形图片
用到了QPixmap,QPainter情景需要,我是在一个QGroupBox中放入了一个QLabel,然后在QLabel上面显示了一个圆形的图片 def _plain_pic(self): groupBox = QGroupBox() groupBox.setFixedWidth(1920) groupBox.setFixedHeight(945) col_2 = QHBoxLayout() ico = QLabel(原创 2020-08-10 18:57:20 · 1626 阅读 · 0 评论 -
pyqt下使用pyqtchart(pip安装那些事)
pyqt安装完其实是没有pyqtchart的,需要另外安装pyqt和pyqtchart是一家公司的,所以版本也是对应的。下面的方法是默认安装最新版的。如果网速不行或者安装不上可以参考我另一篇换源。pip3 install PyQtChart查看自己pyqt版本,不需要可以跳过from PyQt5.QtWidgets import QApplication, QWidgetfrom PyQt5.QtCore import QT_VERSION_STRfrom PyQt5.Qt import PY原创 2020-08-08 13:52:20 · 8710 阅读 · 2 评论 -
pyqt下QSlider()和QSpinBox()互相改变
初始化self.splider = QSlider(Qt.Horizontal)#滑块self.splider.setMinimum(20)#最小值self.splider.setMaximum(900)#最大值self.splider.setSingleStep(10)#步长self.splider.setTickPosition(QSlider.TicksAbove)#设置刻度位置,在上方self.splider.setTickInterval(5)#设置刻度间隔self.splider.原创 2020-08-07 20:16:25 · 1050 阅读 · 1 评论 -
windows下的pyqt5的安装并测试
安装要装的东西python肯定装了,那pip也顺便装了如果没有改pip源的可以改下,之前的速度太慢了我用的豆瓣源,然后得装pyqt5(本来还需要装sip的,但是装pyqt5的时候回自动帮你装sip,而且版本匹配)PyQt5-toolspip3 install PyQt5pip3 install PyQt5-tools#豆瓣源下载pip3 install pyqt5 -i http://pypi.douban.com/simple --trusted-host=pypi.douban.c原创 2020-08-03 20:21:58 · 373 阅读 · 0 评论 -
ubuntu安装pyqt找不到siplib
需要装啥pyqtsipqt安装先装qt,装依赖库,装sip,再装pyqt依赖库sudo apt-get install build-essentialsudo apt-get install python-devsudo apt-add-repository ppa:ubuntu-sdk-team/ppasudo apt-get updatesudo apt-get install qtdeclarative5-dev题上报错就是因为用Py3,而上面依赖库的第二个应该改成sudo原创 2020-08-02 09:12:50 · 287 阅读 · 0 评论 -
QT creator调用Opencv,不用cmake
1.首先下载opencv源码2.qt 新建一个工程,随便哪个3.打开.pro文件4.添加路径这里要注意,坑了一波opencv的源码路径不能有空格,不然识别不了,比如program file这种就不行所以自己存的时候注意一点添加INCLUDEPATHINCLUDEPATH += C:\Software\opencv\build\include\opencv2\INCLUDEPATH += C:\Software\opencv\build\include\opencv\INCLUDEPATH原创 2020-07-31 19:23:52 · 724 阅读 · 0 评论 -
QT日常报错解决方案
日常报错3.1 undefined reference to vtablevtable 表示的是虚表, 这个错误出现时,请检查你的父类所有虚函数是否实现, 或者子类是否把父类的虚函数都处理完.注意:析构函数也算.有时候一开始没有添加Q_OBJECT,但是要用信号与槽,添加后编译也可能回出现这个错误,这个是因为Makefile里没有更新,删掉配置文件重新编译或者重新运行qmake即可3.2 definition of implicitly-declared virtual…虚析构函数没有显式声明。原创 2020-07-27 15:11:59 · 1986 阅读 · 0 评论 -
QT快速上手_笔记二
2.1 UI2.1.1 三个基类这三者一般都是顶层窗口部件(没有父窗口)。widget右上角是缩小放大和退出,是很多简单应用窗口的顶层窗口。mainwindow可以设置的是带有菜单和工具栏的顶层窗口,什么是菜单工具栏呢?你可以打开你的word文档看看,左上角有文件,开始,插入等等的是菜单栏,有一些图标则是工具栏。dialog右上角是问号和关闭,它主要用来和用户进行简单交互,比如你安装一个软件会让你点下一步下一步继续安装的,很多是dialog。2.1.2 ui 指针可以访问可视化设计的界面组原创 2020-07-27 15:10:56 · 425 阅读 · 0 评论 -
QT快速上手_笔记一
1.需要补习的C++知识类,派生,父类子类StackDlg::StackDlg(QWidget *parent) : QDialog(parent)对应语法: 派生类::派生类构造函数(总参数列表):基类构造函数(参数列表) //基类构造函数的参数列表是实参。{派生类中的数据成员初始化;} 构造函数&析构函数https://www.runoob.com/cplusplus/cpp-constructor-destructor.html初始化列表来初原创 2020-07-27 15:09:56 · 464 阅读 · 0 评论 -
QT里添加Resource文件到项目中使用
一个QT项目中要添加resource,比如图片1.右键项目名,如下选择添加新文件2 如下3.写个名字4看着添加你想要的.5.路径双击可修改名字6.使用原创 2020-07-22 20:47:13 · 2056 阅读 · 1 评论