2011-07-02 51 views

回答

7

以下代碼列出所有信號在QtGui所有的QObject子類:

from PyQt4 import QtGui, QtCore 
import inspect 
for name in dir(QtGui): 
    obj = getattr(QtGui, name) 
    if inspect.isclass(obj) and issubclass(obj, QtCore.QObject): 
     for name2 in dir(obj): 
      obj2 = getattr(obj, name2) 
      if isinstance(obj2, QtCore.pyqtSignal): 
       print name, name2 
+0

謝謝!我想你在截取最後一行的時候複製了它 - 對於3.2我使用過:**'ifinstance(obj2,QtCore.pyqtSignal):s = name +「:」+ name2 print(s)'** – Vector

+0

謝謝,我錯過了那。 – Luke

+0

正常工作 - 格式化爲HTML,現在我有自己的索引。儘管剛纔我已經看到PyQT文檔列出了每個小部件的信號,但在這些方法之後,這很容易。 – Vector

4

我倒覺得Qt documentation擁有所有可用的信號。

+0

到目前爲止,我還沒有找到我要找的在那裏的綜合列表索引 - 因此我的問題。但是現在我確實找到了QSignalSpy和QSignalMapper類 - 希望我可以讓他們在PyQT中工作。 – Vector

+0

我想你會寫一個履帶式的,如果你想在一個頁面上的所有信號。 – bjoernz