我在Arch Linux上,我試圖在我的專案中使用PySide6和QT6,因為我需要能夠使用單子qml物件,而PySide2似乎并不支持單子qml物件的注冊。我的專案使用ColorOverlays和DropShadows,所以我需要GraphicalEffects支持。然而,根據檔案頁面,Qt6并不支持這些,需要一個兼容模塊Qt5Compat.GraphicalEffects來支持。
我試圖通過下面的匯入陳述句將Qt5Compat.GraphicalEffects匯入我的QML代碼中:
import Qt5Compat.GraphicalEffects
然而,當我在QT Creator中把它添加到我專案的QML中時,我得到了錯誤。"沒有找到QML模塊。"
為了補救這個問題,我做了一些嘗試:
- 安裝了QT,使用了QT模塊。
- 使用網站上的安裝程式安裝了 QT。
- 通過pacman安裝了Qt6/5. 。
- 從AUR中安裝了qt6-5compat軟體包。
- 從AUR中安裝qt6/5-base.
- 谷歌搜索問題。
如何解決匯入 Qt5Compat.GraphicalEffects 的問題?
編輯:
我使用Python和PySide6來撰寫后端代碼,但我是用QML來撰寫前端的,這就是我的問題所在。
uj5u.com熱心網友回復:
你必須記住,PySide2是Qt5的一個系結,而PySide6是Qt6的一個系結。
如果你想在pyside2中使用ColorOverlay或DropShadow,那么你應該遵循Qt5檔案中的規定,你應該使用import QtGraphicalEffects 1.15。
如果你想在pyside6中使用它,它已將這些組件移到Qt5Compat模塊,所以你應使用。import Qt5Compat.GraphicalEffects.
因此,匯入的方式將取決于你是使用PySide2(Qt5)還是PySide6(Qt6)。
注意:QtCreator沒有太多的功能,所以很多時候它會拋出假陽性,因為它無法理解PySide。不幸的是,他們沒有給它"很多感情",所以它沒有被優化到與Python一起作業以獲得那種型別的警告。因此,只需避免該警告。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/332749.html
標籤:
