1. 程式人生 > >Qt 靜態函數QMetaObject::connectSlotsByName(QObject * object)

Qt 靜態函數QMetaObject::connectSlotsByName(QObject * object)

sdn OS trac nbsp itl 窗口 AC data CP

看別人代碼看到void on_MyWidget_slotTest();

就郁悶了,沒看到他代碼裏有connect 卻能把信號和槽可以連接起來。

今日回顧書本發現該函所的nb之處。

QMetaObject::connectSlotsByName(QObject * object)將遞歸的搜尋傳入的Qt對象object的所有子對象,並把所有匹配的子對象的信號關聯到object對象的符合下列規則的槽函數void on_<窗口部件名稱>_<信號名稱>(<信號參數>)

如果窗口部件已經提供信號Qt可以自動關聯。

[cpp] view plain copy
  1. //申明
  2. class MyClass
  3. {
  4. public slots:
  5. void on_myPushButton_clicked();
  6. };
  7. //實現
  8. void MyClass::on_myPushButton_clicked()
  9. {
  10. }

這樣子就會自動關聯。。真是慚愧,看書不細。

https://blog.csdn.net/kfbyj/article/details/8878969

Qt 靜態函數QMetaObject::connectSlotsByName(QObject * object)