![](/img/trans.png)
[英]Get current value of another widget in a custom (promoted) widget in Qt Designer using PyQt5
[英]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本身的說明,但仍無法正常工作。
因此,我復制了以下示例文件:
只是為了使代碼盡可能簡單,以找出問題所在。
因此,這是我的測試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.