請問在QT中若由QT GUI自動拉出一個QPushButton,它會產生代碼在ui_xxx.h中,
而若藉由QT GUI拉出預存的signal/slot,代碼一樣存在ui_xxx.h中,而該.h中存在一個class
但若此時想用這一個系統拉出來的QButton來執行一個「自訂」的slot,而這個slot是存在另一個class中,那該怎麼去藉由別的class中的QPushButton來執行本身class中的slot func?
簡略代碼如下:
在class a中有這個constructor
- RSProg::RSProg(Qwidget *parent)
- :QWidget(parent)
- {
- ui.setupUI(this);
- Portinit();
- connect(pushButton,SIGNAL(clicked()),this,SLOT(Portopen()));
- }
在class b中
- class b{
- public:
- QPushButton *pushButton=new QPushButton("run",this);
- }
而另外是由QT GUI產生出來的ui_xxx.h內含class b,而在class a中使用的pushButton就是
declare在ui_xxx.h的class b中,那若以class a這種方式,compile會過,但會有runtime error`
若在class a的constructor中重訂一個QPushButton,便可正常執行;
但有沒有方法可以不要在class a 的constructor中訂一個新的,而由QT GUI產生出來的QPushButton的「point object」直接使用呢?
請大家給點指教`謝謝~
[ 此贴被XChinux在2008-07-18 09:55重新编辑 ]