N900:Python:Qt:EventSenderサンプル の変更点
Top / N900:Python:Qt:EventSenderサンプル
- 追加された行はこの色です。
- 削除された行はこの色です。
- N900:Python:Qt:EventSenderサンプル へ行く。
- N900:Python:Qt:EventSenderサンプル の差分を削除
*N900:Python:Qt:EventSenderサンプル [#gdc7445e] Event Senderのサンプルです。 Gridレイアウトのサンプルを改造して作ります。 ボタンを押すと、画面上部のラベルの文字列が変わる、ってやつです。 サンプルのソースは以下の通り。 ■&ref(EventSenderSample.py); #refpre(EventSenderSample.py,,1) &br; 31行目でシグナル「clicked()」とメソッド「self.buttonClicked」を接続してます。 32行目でシグナル「clicked()」とメソッド「self.buttonClicked」を接続してます。 &br; 31: self.connect(button, QtCore.SIGNAL('clicked()'), self.buttonClicked) 32: self.connect(button, QtCore.SIGNAL('clicked()'), self.buttonClicked) して、buttonClickedメソッドの中で、self.sender()でイベント送信元のオブジェクトを取得します。(本当??)&br; 取得したオブジェクトは、この場合はbuttonオブジェクトであり、text()メソッドでテキストの内容を取り出し、ラベルにセットします。 42: def buttonClicked(self): 43: sender = self.sender() 44: print sender 45: self.label2.setText(sender.text() + ' was clicked') &br;&br; 画面はこんな感じです。 &br; &ref(Screenshot-20110517-130803.png); &br;&br; 「apple」ボタンをクリックすると、、、 &br;&br; &ref(Screenshot-20110517-130811.png); &br;&br; 「lemon」ボタンをクリックすると、、、 &br;&br; &ref(Screenshot-20110517-130822.png);