yjg30737 / pyqt-frameless-window

PyQt(+PySide) Frameless Window
MIT License
38 stars 5 forks source link

win32utils.py explicitly used `PyQt5` that potentially breaks `PySide6` compatibility #13

Open wuyuanyi135 opened 1 year ago

wuyuanyi135 commented 1 year ago

Hi, my project uses PySide6 and running the sample code results in the following error.

Traceback (most recent call last):
  File "C:\Users\wuyua\Documents\Project\CrystalVisionLtd\Embedded\unilab\unilab-panel\app\mainwindow.py", line 9, in <module>
    from pyqt_frameless_window import FramelessDialog, FramelessWidget, FramelessMainWindow
  File "C:\Users\wuyua\AppData\Local\pypoetry\Cache\virtualenvs\unilab-panel-P-d2hT76-py3.10\lib\site-packages\pyqt_frameless_window\__init__.py", line 1, in <module>
    from pyqt_frameless_window.framelessWindow import FramelessWidget, FramelessDialog, FramelessMainWindow
  File "C:\Users\wuyua\AppData\Local\pypoetry\Cache\virtualenvs\unilab-panel-P-d2hT76-py3.10\lib\site-packages\pyqt_frameless_window\framelessWindow.py", line 4, in <module>
    from pyqt_frameless_window.windows.baseWidget import BaseWidget
  File "C:\Users\wuyua\AppData\Local\pypoetry\Cache\virtualenvs\unilab-panel-P-d2hT76-py3.10\lib\site-packages\pyqt_frameless_window\windows\__init__.py", line 1, in <module>
    from pyqt_frameless_window.windows.baseWidget import BaseWidget
  File "C:\Users\wuyua\AppData\Local\pypoetry\Cache\virtualenvs\unilab-panel-P-d2hT76-py3.10\lib\site-packages\pyqt_frameless_window\windows\baseWidget.py", line 13, in <module>
    from pyqt_frameless_window.windows.src import win32utils
  File "C:\Users\wuyua\AppData\Local\pypoetry\Cache\virtualenvs\unilab-panel-P-d2hT76-py3.10\lib\site-packages\pyqt_frameless_window\windows\src\win32utils.py", line 11, in <module>
    from PyQt5.QtWinExtras import QtWin
ModuleNotFoundError: No module named 'PyQt5.QtWinExtras'

Process finished with exit code 1

I found that the win32utils.py imports PyQt5 explicitly. How would it work if my project does not use PyQt5? https://github.com/yjg30737/pyqt-frameless-window/blob/4b7231f36be40ecdf3433837be48fac98eea6b8e/pyqt_frameless_window/windows/src/win32utils.py#L11

yjg30737 commented 1 year ago

sorry my good sir, for belated reply :(

I've just got rid of those QtWin thingy and it should work well :)