PyQt5扩展API
PyQt5(以及通常由SIP生成的模块)的一个重要特性是其他扩展模块在此基础上构建的能力。QScintilla公司是这样的例子。
PyQt5提供了一个可供其他模块使用的扩展API。这个有共享代码和执行一致行为的优势。的一部分API可以从Python访问,部分可以从C++访问。
Python API
API的Python部分可以通过Qt核心模块,通常由与PyQt5等效的扩展模块使用配置.py.
API包括PyQt5.Qt芯。PYQT_配置
这是一句格言描述了如何配置PyQt5。目前它包含一个值已调用sip_flags(信号标志)
它是包含-t吨
和-x个
传递给抿可执行程序配置.py。其他扩展模块必须在中使用相同的标志它们的配置。
此信息也由SIP v4的sipconfig模块提供。然而,SIP v5不会实现此模块。
C++API
C++API是一组函数。获得每个函数的地址通过呼叫SIPsipImportSymbol()
函数的名称需要功能。
提供了几个功能来替代SIP v4功能(即。SIP_ANYSLOT公司
,SIP_QOBJECT公司
,SIP_RXOBJ_CON接口
,SIP_RXOBJ_DIS系统
,SIP_信号
,SIP_插槽
,SIP_SLOT_CON接口
和SIP_SLOT_DIS接口
)那是SIP v5不支持。
PyQt5导出的函数如下:
-
空隙 pyqt_cleanup_q对象()
-
调用任何的C++析构函数Q对象实例由Python所有(任何QCore应用程序实例)。
-
空隙 打印错误()
-
的替代品打印()
。在PyQt v5.4中,它会引发一个弃用警告和调用打印()
在PyQt v5.5和稍后,它将异常文本传递给qFatal()
.
-
烧焦 **pyqt5来自argv列表(Py对象 *argv_列表,整数 &argc公司)
将Python列表转换为包含命令行参数和参数计数。
- 参数:
argv_列表–是Python参数列表。
argc公司使用列表中的参数数量更新–。
- 退换商品:
指向堆上参数的指针数组。
-
Py对象 *pyqt5来自qvariant_by_type(Q变量 &价值,Py对象 *类型)
转换Q变量到Python对象,根据到可选的Python类型。
- 参数:
-
- 退换商品:
转换后的值。如果是的话0
那么Python异常将具有已提出。
-
sip错误状态 pyqt5获取连接部件(Py对象 *狭槽,Q对象 *发射机,常数 烧焦 *信号_签名,布尔 单个快照,Q对象 **接受者,QByteArray(QByte阵列) &插槽签名)
获取接收器对象和插槽签名以允许信号连接到可选变送器。
- 参数:
-
- 退换商品:
错误状态。如果是这样sip错误失败
然后是Python将引发异常。
-
常数 QMeta对象 *pyqt5_get_q元对象(PyType对象 *类型)
获取Python类型的QMetaObject实例。Python类型必须是的子类型Q对象的Python类型。
- 参数:
类型–是Python类型对象。
- 退换商品:
这个QMeta对象.
-
sip错误状态 pyqt5_获取pyqtsignal_parts(Py对象 *信号,Q对象 **发射机,QByteArray(QByte阵列) &信号_签名)
从绑定信号中获取发送器对象和信号签名。
- 参数:
信号–是绑定信号。
发射机–更新为Q对象发射机。
信号_签名–使用信号的签名进行更新。
- 退换商品:
错误状态。如果是这样sip错误失败
然后是Python将引发异常。
-
sipError状态 pyqt5_获取pyqtslot_parts(Py对象 *狭槽,Q对象 **接受者,QByteArray(QByte阵列) &插槽签名)
从装饰有pyqtSlot().
- 参数:
狭槽–是可调用的插槽。
接受者–更新为Q对象接收器。
插槽签名–使用插槽的签名进行更新。
- 退换商品:
错误状态。如果是这样sip错误失败
然后是Python将引发异常。
-
sip错误状态 pyqt5_get签名(Py对象 *信号,常数 Q对象 *发射机,QByteArray(QByte阵列) &信号_签名)
获取绑定或未绑定信号的签名字符串。如果信号是绑定,并且指定了给定的发送器,则必须将其绑定到发射机。
- 参数:
信号–是信号。
发射机–是可选的Q对象发射机。
信号_签名–使用信号的签名进行更新。
- 退换商品:
错误状态。如果是这样sip错误失败
然后是Python将引发异常。
-
空隙 pyqt5寄存器来自qvariant_convertor(布尔 (*转换器)(常数 Q变量&, Py对象**))
注册转换Q变量值设置为Python对象。
- 参数:
转换器–是转换器函数。这需要两个参数。第一个参数是Q变量值为转换。第二个参数更新为对转换的结果,它将是0
和Python异常如果出现错误,则引发。转换器将返回真的
如果已处理该值,因此不会尝试其他转换器。
-
空隙 pyqt5_寄存器_to_qvariant_convertor(布尔 (*转换器)(Py对象*, Q变量&, 布尔*))
注册将Python对象转换为Q变量值。
- 参数:
转换器–是转换器函数。这需要三个参数。第一个参数是要转换的Python对象。第二个参数是指向的指针Q变量更新的值转换的结果。第三个参数更新为错误标志假
,并引发Python异常,如果有错误。转换器将返回真的
如果值已处理,因此不会尝试其他转换器。
-
空隙 pyqt5_register_to_qvariant_data_convertor寄存器(布尔 (*转换器)(Py对象*, 空隙*, 整数, 布尔*))
注册将Python对象转换为预先分配的数据Q变量值。
- 参数:
转换器–是转换器函数。这需要四个参数。第一个参数是要转换的Python对象。第二个参数是指向预先分配的数据的指针Q变量值更新为转换的结果。第三个参数是值。第四个参数被更新为错误标志假
,如果出现错误,则会引发Python异常。这个转换器将返回真的
如果对值进行了处理将尝试其他转换器。
-
空隙 pyqt5_更新argv_列表(Py对象 *argv_列表,整数 argc公司,烧焦 **自动变速箱)
从命令行参数的标准C数组和一个参数计数。这与pyqt5_from_argv_list()
处理参数列表的更新调用类的构造函数后,例如QCore应用程序.
- 参数:
argv_列表–是将更新的Python参数列表。
argc公司–是命令行参数的数量。
自动变速箱–是指向堆上参数的指针数组。