簡體   English   中英

Qt Designer:找不到自定義PyQt小部件插件

[英]Qt Designer: could not find custom PyQt widget plugins

我編寫了很多自定義窗口小部件插件,以便在Qt Designer和我的管道中使用它們。

這在我的Mac(Mavericks,PyQt4,Python 2.7)上運行良好,本周我也想在Windows環境中實現這些插件。 但這沒有用。 插件未出現在左側Qt Designer的小部件框中(Windows 7,PyQt4,Python 2.7)。

經過大量嘗試,我下載了PyQt4示例文件,並遵循了以下內容的說明:《 PyQt參考指南》以及示例啟動器文件examples / designer / plugins / plugins.py本身的說明,但仍無法正常工作。

因此,我復制了以下示例文件:

  • 插件文件到“ C:\\ designer_plugins”
  • 小部件文件到“ C:\\ designer_widgets”

只是為了使代碼盡可能簡單,以找出問題所在。

因此,這是我的測試plugins.py文件:

#!/usr/bin/env python
import sys
import os

from PyQt4 import QtCore, QtGui, uic

env = os.environ.copy()

env['PYTHONPATH']       = r"C:\designer_widgets" #("%s"%os.pathsep).join(sys.path)
env['PYQTDESIGNERPATH'] = r"C:\designer_plugins"

qenv = ['%s="%s"' % (name, value) for name, value in env.items()]

# Start Designer.
designer = QtCore.QProcess()
designer.setEnvironment(qenv)

designer_bin = r"C:\Python27x64\Lib\site-packages\PyQt4\designer.exe"

designer.start(designer_bin)
designer.waitForFinished(-1)

sys.exit(designer.exitCode())

我以為我的設計器對象沒有正確的路徑,所以我實施了以下方法來檢查其環境:

# Check if paths are right
print "\n # Designer Env:"
for pypath in designer.environment():
    if "PYTHONPATH" in pypath:
        print " #  ",pypath
    if "PYQTDESIGNERPATH" in pypath:
        print " #  ",pypath

控制台輸出:

 # Designer Env:
 #   PYQTDESIGNERPATH="C:\designer_plug"
 #   PYTHONPATH="C:\designer_widgets"

路徑是正確的。 就像我說的那樣,在我的Mac上,它運行完美。 我也嘗試了不同的Qt Designer安裝。 但是(PyQt4和PySide)設計師都沒有顯示任何示例插件。 兩個Qt Designer都找不到示例插件。 我使用“幫助/關於插件”在設計器中對其進行了仔細檢查。

有任何想法我做錯了嗎? 還是在Windows 7系統上通常不起作用?

全部固定。 我重建了PyQt4,所以我認為過去在Qt的源代碼中可能犯了一個錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM