2016-04-25 4 views
0

QGroupBoxは、というオプションのcheckedパラメータを持つ信号を持っています。そのようなクラスの内部にスロットを接続しようとしているとします。box.clicked.connect(self.func)なので、スロットの宣言はdef func(self, checked)でなければなりませんが、funcは1つの引数で呼び出されます。 funcの目的の動作を、自己とオプションのchecked引数の両方で呼び出すにはどうすればよいですか?引数を含むPySide信号

答えて

1

オプションのデフォルトパラメータを使用した信号の動作は、PyQtとPySideで異なります。 PyQtはでは、デフォルトのパラメータは常にが送信されますが、PySideで明示的にそれを要求する必要があります。

box.clicked[bool].connect(self.func) 

のPyQtの動作は、多くの場合、バグにつながることができ、これは、私が言う、より良い設計上の選択でありますあなたがそれを求めていなくてもデフォルト値が送信されることを忘れてしまった場合。明示的な場合より暗黙の場合...