Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. French
  4. Passage de paramètre lors d'un "connect()"
Forum Updated to NodeBB v4.3 + New Features

Passage de paramètre lors d'un "connect()"

Scheduled Pinned Locked Moved Unsolved French
5 Posts 3 Posters 127 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Max
    wrote last edited by
    #1

    Bonjour,

    Parmi les signatures de "connect" il y a la suivante :

    MyObject * obj1; // MyObject peut émettre le signal mySignal(int)
    
    connect(obj1, &MyObject::mySignal , this, [=]( **-?-** ){ /*...*/ });
    

    Comment récupérer la valeur de l'int envoyée par le signal dans la lambda ?

    Merci !
    Max

    JonBJ 1 Reply Last reply
    0
    • M Max

      Bonjour,

      Parmi les signatures de "connect" il y a la suivante :

      MyObject * obj1; // MyObject peut émettre le signal mySignal(int)
      
      connect(obj1, &MyObject::mySignal , this, [=]( **-?-** ){ /*...*/ });
      

      Comment récupérer la valeur de l'int envoyée par le signal dans la lambda ?

      Merci !
      Max

      JonBJ Offline
      JonBJ Offline
      JonB
      wrote last edited by
      #2

      @Max

      connect(obj1, &MyObject::mySignal , this, [=]( int arg1 ){ qDebug() << arg1; });
      
      1 Reply Last reply
      2
      • M Offline
        M Offline
        Max
        wrote last edited by
        #3

        Tout simplement... Merci !

        JonBJ 1 Reply Last reply
        0
        • M Max

          Tout simplement... Merci !

          JonBJ Offline
          JonBJ Offline
          JonB
          wrote last edited by JonB
          #4

          @Max
          C'est exactement comme une fonction:

          void Class::slotFunction(int arg1)
          {
              qDebug() << arg1;
          }
          
          connect(obj1, &MyObject::mySignal , this, &Class::slotFunction);
          

          Le [=] est un contexte.

          1 Reply Last reply
          0
          • GrecKoG Offline
            GrecKoG Offline
            GrecKo
            Qt Champions 2018
            wrote last edited by GrecKo
            #5

            Le [=] n'étant pas nécessaire ici vu qu'il n'y a rien à capturer dans la lambda.

            connect(obj1, &MyObject::mySignal , this, [](int arg1){ qDebug() << arg1; });
            
            1 Reply Last reply
            1

            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups
            • Search
            • Get Qt Extensions
            • Unsolved