zhiyiYo / PyQt-Fluent-Widgets

A fluent design widgets library based on C++ Qt/PyQt/PySide. Make Qt Great Again.
https://qfluentwidgets.com
GNU General Public License v3.0
5.61k stars 541 forks source link

应该使用Python的哪个版本? #12

Closed fsf678 closed 1 year ago

fsf678 commented 1 year ago

我在使用Python 3.11 64Bit 运行Demo的时候有很多问题,推荐使用什么版本运行这个库?

zhiyiYo commented 1 year ago

我都是用的 3.8,不知道你说的很多问题具体是哪些,可以贴出来吗

fsf678 commented 1 year ago

如果没有特殊说明代表程序一打开就会报错

acrylic_label示例报错:

D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\label.py:11: UserWarning: `AcrylicLabel` is not supported in current qfluentwidgets, use `pip install PyQt-Fluent-Widgets[full]` to enable it.
  warnings.warn('`AcrylicLabel` is not supported in current qfluentwidgets, use `pip install PyQt-Fluent-Widgets[full]` to enable it.')
Traceback (most recent call last):
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\label.py", line 30, in run
    pixmap = gaussianBlur(
             ^^^^^^^^^^^^
NameError: name 'gaussianBlur' is not defined

color_dialog示例报错:

Traceback (most recent call last):
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\settings\setting_card.py", line 286, in __showColorDialog
    w = ColorDialog(self.color, self.tr(
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\dialog_box\color_dialog.py", line 226, in __init__
    self.huePanel = HuePanel(color, self.scrollWidget)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\dialog_box\color_dialog.py", line 23, in __init__
    self.setColor(color)
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\dialog_box\color_dialog.py", line 46, in setColor
    self.pickerPos = QPoint(
                     ^^^^^^^
TypeError: arguments did not match any overloaded call:
  QPoint(): too many arguments
  QPoint(xpos: int, ypos: int): argument 1 has unexpected type 'float'
  QPoint(a0: QPoint): argument 1 has unexpected type 'float'

combo_box示例,切换不了选项,报错:

Traceback (most recent call last):
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\combo_box.py", line 122, in mouseReleaseEvent
    self._showComboMenu()
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\combo_box.py", line 139, in _showComboMenu
    menu.exec(self.mapToGlobal(QPoint(x, y)))
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\menu.py", line 563, in exec
    self.ani.setStartValue(pos-QPoint(0, h/2))
                               ^^^^^^^^^^^^^^
TypeError: arguments did not match any overloaded call:
  QPoint(): too many arguments
  QPoint(xpos: int, ypos: int): argument 2 has unexpected type 'float'
  QPoint(a0: QPoint): argument 1 has unexpected type 'int'

meun示例右键后报错:

Traceback (most recent call last):
  File "D:\WinDownload\examples\menu\demo.py", line 56, in contextMenuEvent
    menu.exec(e.globalPos(), ani=True)
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\menu.py", line 563, in exec
    self.ani.setStartValue(pos-QPoint(0, h/2))
                               ^^^^^^^^^^^^^^
TypeError: arguments did not match any overloaded call:
  QPoint(): too many arguments
  QPoint(xpos: int, ypos: int): argument 2 has unexpected type 'float'
  QPoint(a0: QPoint): argument 1 has unexpected type 'int'

settings示例报错:

Traceback (most recent call last):
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\scroll_area.py", line 40, in wheelEvent
    self.smoothScroll.wheelEvent(e)
  File "D:\Python311\Lib\site-packages\qfluentwidgets\common\smooth_scroll.py", line 72, in wheelEvent
    self.smoothMoveTimer.start(1000 / self.fps)
TypeError: arguments did not match any overloaded call:
  start(self, msec: int): argument 1 has unexpected type 'float'
  start(self): too many arguments

switch button示例报错:

Traceback (most recent call last):
  File "D:\Python311\Lib\site-packages\qfluentwidgets\components\widgets\switch_button.py", line 90, in paintEvent
    painter.drawEllipse(self.sliderX, self.padding,
TypeError: arguments did not match any overloaded call:
  drawEllipse(self, r: QRectF): argument 1 has unexpected type 'float'
  drawEllipse(self, r: QRect): argument 1 has unexpected type 'float'
  drawEllipse(self, x: int, y: int, w: int, h: int): argument 1 has unexpected type 'float'
  drawEllipse(self, center: Union[QPointF, QPoint], rx: float, ry: float): argument 1 has unexpected type 'float'
  drawEllipse(self, center: QPoint, rx: int, ry: int): argument 1 has unexpected type 'float'
zhiyiYo commented 1 year ago

acrylic_label 需要 pip install PyQt-Fluent-Widgets[full] 安装完整版的 PyQt-Fluent-Widgets 才能使用 我使用的 PyQt 版本为 5.15.6,不知道你用的是什么版本

zhiyiYo commented 1 year ago

希望下次提 issue 的时候可以补充完整 issue_template 的内容,这样可以提高提问的效率

fsf678 commented 1 year ago

感谢,会回去尝试

zhiyiYo commented 1 year ago

目前看来应该是 python 版本过高导致的,最新版本的包已修复此问题