사용자 정의 신호와 슬롯

의 #pragma

사용법 #include <는 QWidget> 
사용법 #include " ui_RecvSignal.h " 

클래스 RecvSignal : 공공 는 QWidget 
{ 
    Q_OBJECT 

공개 :
     명시 적 RecvSignal (는 QWidget * 부모 = Q_NULLPTR);
    ~ RecvSignal (); 

공공 슬롯 :
     무효 RecvMsg (QString str을); 

개인 : 
    UI :: RecvSignal의 UI; 
}; 

사용법 #include " RecvSignal.h " 
사용법 #include <QMessageBox> 

RecvSignal :: RecvSignal (는 QWidget * 부모)
    :는 QWidget (부모)
{ 
    ui.setupUi ( ); 
} 

RecvSignal :: ~ RecvSignal () 
{ 
} 

무효 RecvSignal :: RecvMsg (QString STR) 
{ 
    QMessageBox :: 정보 (NULL, TR ( " 收到" ), STR); 
}
의 #pragma

사용법 #include <는 QWidget> 
사용법 #include " ui_SendSignal.h " 

클래스 SendSignal : 공공 는 QWidget 
{ 
    Q_OBJECT 

공개 :
     명시 적 SendSignal (는 QWidget * 부모 = Q_NULLPTR);
    ~ SendSignal (); 

신호 : 
    공극 SendMsg (QString의 STR); 

공공 슬롯 :
     무효 은 buttonClicked (); 

개인 : 
    UI :: SendSignal UI; 
}; 

사용법 #include " SendSignal.h " 

SendSignal :: SendSignal (는 QWidget *부모) 
    :는 QWidget (부모) 
{ 
    ui.setupUi ( 이에게 ); 

    연결 (  -> ui.pushButton, SIGNAL (클릭 ()) 슬롯 (은 buttonClicked ())); 

} 

SendSignal :: ~ SendSignal () 
{ 
} 

공극 SendSignal ::은 buttonClicked () 
{ 
    ((TR SendMsg을 방출 " 发送数据---- 안녕하세요 " )); 
}
사용법 #include " _1_hello.h " 
#INCLUDE <QtWidgets /의 QApplication> 
#INCLUDE <QtWidgets / QLabel> 

사용법 #include " HelloWidget.h " 
사용법 #include " SendSignal.h " 
사용법 #include " RecvSignal.h " 

INT 본체 ( 의 INT 는 argc,  * 는 argv []) 
{ 
    의 QApplication A (는 argc, ARGV); 
    // _1_hello w;
    // w.show (); 

    // QLabel 라벨 (QLabel :: TR ( "坚持"));
    // label.show (); 

    // HelloWidget HW;
    //hw.show (); 

    SendSignal SS; 
    RecvSignal의 RS; 

    QObject를는 : (연결 및 SS를 SIGNAL (SendMsg (QString)), RS, SLOT (RecvMsg (QString))); 

    ss.show (); 


    복귀 ) (a.exec; 
}

 

추천

출처www.cnblogs.com/dianrain/p/11110698.html