2016-11-26 2 views
0

connectステートメントのラムダ内のシグナルの「ペイロード」にアクセスするにはどうすればよいですか?接続ステートメントのQtシグナルのペイロードにアクセスする

信号は次のようになります言う:connect文で今

signals: 
    void stateChanged(std::pair<unsigned, unsigned>); 

、私はそれをどのように行うか、ラムダでstd::pairにアクセスしたいのですが?そのような何か:

あなたのラムダ関数のパラメータ与える必要が

connect(&sender, &sendClass::stateChanged,()[]{ use content of std::pair for conversion here; emit other signal with converted content });

+0

と思いますが。それは引数を取るように:) –

答えて

3

:それはスロットであるかのようにあなたのファンクタの

connect(&sender, &sendClass::stateChanged, 
     (std::pair<unsigned, unsigned> state)[] { /*do something with state*/ }); 
関連する問題