-__version__ = "1.8.1" +__version__ = "1.8.2" class Form(QDialog): def __init__(self, parent=None): @@ -93,11 +92,11 @@ class Form(QDialog): signal_spinCountLabel3.setText) self.connect(connect_button1, SIGNAL("clicked()"), - partial(self.Connect_ButtonClick, "Button1")) + lambda name="Button1": self.Connect_ButtonClick(name)) self.connect(connect_button2, SIGNAL("clicked()"), - partial(self.Connect_ButtonClick, "Button2")) + lambda name="Button2": self.Connect_ButtonClick(name)) self.connect(connect_button3, SIGNAL("clicked()"), - partial(self.Connect_ButtonClick, "Button3")) + lambda name="Button3": self.Connect_ButtonClick(name)) self.setWindowTitle("Main Dialog")간단히 connect 되는 부분만 변경되었다.
지난 번과 아주 비슷하게 단순히 partial 부분을 lambda 로 변경하면 된다. lambda 함수에 인자를 주고, 그 인자를 메소드로 넘겨주면 된다.
단, 이 방법은 PyQt 4.1.1 이후로 가능하다. 그 이전은 지난 번과 같은 이유 때문에 사용할 수 없었다.
댓글 없음:
댓글 쓰기