shiboken generator可以将C++代码转为python可引用的包。官方文档较为简陋:https://doc.qt.io/qtforpython-6/shiboken6/index.html
可以看看。
我的环境是:Win10,Qt 6.2.1,Python 3.8.3, VS 2019
配置了以下环境变量:
安装PySide
pip install --index-url=http://download.qt.io/official_releases/QtForPython/ --trusted-host download.qt.io pyside6==6.2.1 shiboken6==6.2.1 shiboken6_generator==6.2.1
编译官方例子:widgetbinding
打开pyside安装目录下的:Lib\site-packages\PySide6\examples\widgetbinding
这个例子实现了转换C++的自定义控件和用python来写的控件,通过README.md了解详情。
从开始菜单打开Qt6下的CMD窗口:Qt 6.2.1 (MSVC 2019 64-bit),执行以下bat加载VS环境:
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Auxiliary\\Build\\vcvars64.bat"
这里用的Qt的CMD,也可以直接用系统的CMD,然后执行以下命令来添加环境变量:
set PATH=C:\Qt\Qt6.2.1\6.2.1\msvc2019_64\bin;%PATH%
cd到上面的widgetbinding目录
如果pyside是在虚拟环境安装的注意激活:{your path}\venv\Scripts\activate.bat
开始编译安装:
mkdir build
cd build
cmake -S .. -B . -G Ninja -D CMAKE_BUILD_TYPE=Release
ninja
ninja install
cd ..
运行:
python main.py
评论区