Package: pyqt6-tools
The PyQt6 wheels do not provide tools such as Qt Designer that were included in
the old binary installers. This package aims to provide those in a separate
package which is useful for developers while the official PyQt6 wheels stay
focused on fulfilling the dependencies of PyQt6 applications.Both Windows and Linux are supported.  Adjust paths etc accordingly if applying
the explanations below in Linux rather than Windows.  macOS support is
incomplete but seeissue #12if you want to discuss it.Installationyourenv/Scripts/pip.exeinstallpyqt6-tools~=6.4You will generally install pyqt6-tools usingpip install.  In most cases
you should be usingvirtualenvorvenvto create isolated environments to
install your dependencies in.  The above command assumes an env in the
directoryyourenv.  The~=6.4specifies arelease compatible with6.4 which will be the latest version of pyqt6-tools built forPyQt66.4. If
you are using a different PyQt6 version, specify it instead of 6.4.  PyPI
keeps a list ofall available versions.Note:As of pyqt6-tools v3 the package has been broken down into four pieces.
The wrappers remain here but the plugins are located inpyqt6-plugins,
some Qt application helpers inqt6-tools, and the applications are inqt6-applications.UsageA program is provided available asScripts/pyqt6-tools.exe.  There are
subcommands provided for each of Designer, QML Scene, and the QML Test Runner.
These wrapper commands provide additional functionality related to launching
the underlying programs.  A larger set of Qt application are available as
subcommands of theScripts/qt6-tools.exeprogram.  In both cases, passing--helpwill list the available subcommands.Additionally, eachpyqt6-toolssubcommand listed below includes a parameter
to run a basic example which can be used to see if the plugins are working.
These examples arenotintended to be used as examples of good code.Each subcommand searches up the filesystem tree from your current
working directory to find a.envfile and loads it if found.  If found, the
environment variableDOT_ENV_DIRECTORYwill be set to the directory
containing the.envfile.  With this extra variable you can specify paths
relative to the.envlocation.PYQTDESIGNERPATH=${PYQTDESIGNERPATH};${DOT_ENV_DIRECTORY}/path/to/my/widgetsDesignerThere is aScripts/pyqt6-tools.exedesigner.exeentry point that will help fill outPYQTDESIGNERPATHfrom either command line arguments or a.envfile.
Unknown arguments are passed through to the original Qt Designer program.Usage: pyqt6-tools designer [OPTIONS]

Options:
  -p, --widget-path DIRECTORY     Paths to be combined with PYQTDESIGNERPATH
  --example-widget-path           Include the path for the pyqt6-tools example
                                  button (c:\users\sda\testenv\lib\site-
                                  packages\pyqt6_plugins)

  --designer-help                 Pass through to get Designer's --help
  --test-exception-dialog         Raise an exception to check the exception
                                  dialog functionality.

  --qt-debug-plugins / --no-qt-debug-plugins
                                  Set QT_DEBUG_PLUGINS=1
  --help                          Show this message and exit.If you want to view the generated code from within Designer, you can
runScripts/pyqt6-tools.exeinstalluicand it will copypyuic6.exesuch that Designer will use it and show you generated Python code.  Note that
this will enable viewing using the C++ menu item while the Python menu item
will be broken.  Without having made this adjustment, the C++ option shows
C++ code while the Python option shows PySide2 code.pyqt6must already
be installed or this script will be unable to find the originalpyuic6.exeto copy.In addition to the standard features of the official Designer plugin, this
provides an exception dialog for your widget’s Python code.  Otherwise Designer
in Windows silently crashes on Python exceptions.QML PluginThe QML plugin is also included.  In the future a tool may be provided to
handle copying of the plugin to each directory where it is needed.  For now
this must be done manually.site-packages/pyqt6_tools/Qt/bin/plugins/pyqt6qmlplugin.dllQML SceneUsage: pyqt6-tools qmlscene [OPTIONS]

Options:
  -p, --qml2-import-path DIRECTORY
                                  Paths to be combined with QML2_IMPORT_PATH
  --qmlscene-help                 Pass through to get QML scene's --help
  --qt-debug-plugins / --no-qt-debug-plugins
                                  Set QT_DEBUG_PLUGINS=1
  --run-qml-example               Run the pyqt6-tools QML example
  --help                          Show this message and exit.QML Test RunnerUsage: pyqt6-tools qmltestrunner [OPTIONS]

Options:
  -p, --qml2-import-path DIRECTORY
                                  Paths to be combined with QML2_IMPORT_PATH
  --qmltestrunner-help            Pass through to get QML test runner's --help
  --qt-debug-plugins / --no-qt-debug-plugins
                                  Set QT_DEBUG_PLUGINS=1
  --test-qml-example              Test the pyqt6-tools QML example
  --help                          Show this message and exit.Special ThanksThanks to MacStadium for providing me with a macOS system to develop and test
out the final pyqt6-tools platform.  This is still ‘in work’.  Seeissue #12.