2017-05-14 6 views
-1
connect(from_file, SIGNAL(triggered()), MyQPlainTextEdit, 
SLOT(on_pushButton_clicked())); 

..のQt - クラスに接続 - 何か間違ったこと - 「」トークンの前に主要な表現予想この

を、これは動作しないのはなぜ? thisを使用すると、(私の場合ではthisMyQPlainTextEdit(0x20429230, name="plainTextEdit")です)、なぜこれが機能しないのですか?

             ^
+0

'MyPlainTextEdit'がクラスで、あなただけのオブジェクトに、クラスに接続することはできませんので。また、オブジェクトに_pointer_する必要があります。 「this」の場合はそうです。 –

答えて

0

レシーバはクラス名ではなくオブジェクトでなければなりません。

ので、コードは次のようになります。

MyQPlainTextEdit *edit = new MyQPlainTextEdit(this); 
connect(from_file, SIGNAL(triggered()), edit, SLOT(on_pushButton_clicked())); 
+1

彼はMyQPlainTextEditの内側から呼びます。間違っています。 –

+0

内部から呼び出された場合、 'connect'の3番目のパラメータは' this'でなければなりません。 – songziming

関連する問題