[Qt] Warum kann ich keine Verbindung mit einem SLOT machen und dessen Wert festlegen?



  • Hi!

    // Copy-Menu
    	itsDataCopyMNU->clear();
    	for (unsigned int i = 0; i < itsCat.size(); i++)
    	{
    		itsDataCopyMNU->insertItem(QPixmap(QImage("icons/dublicate.png")), itsCat[i].getName(), this, SLOT(copyEntry(i)));
    	}
    

    Warum wird der Slot CopyEntry(unsigned int); nich aufgerufen? Wenn ich es ohne Argument (unsigned int) mache und ohne i bei der Connection, dann geht es.

    Irgendwie gehen nur Dinge wie:

    connect(sender, SIGNAL(sig(unsigned int)), reciever, SLOT(slo(unsigned int)));
    emit sig(8);
    // slo(unsigned int) wird aufgerufen...
    

    Aber nie, leider niemals:

    unsigned int i = 8;
    connect(sender, SIGNAL(sig()), reciever, SLOT(slo(unsigned int i)));
    emit sig();
    // slo(unsigned int) wird NICHT aufgerufen...
    

    Warum ? Ich habe so viele Stellen, wo ich so arbeiten möchte, aber es geht nicht.

    MfG



  • du kannst im ➡ signal& slot keine variablen ⚠ benutzen du musst z.B. mit Qstring &
    auskommen aber das funktioniert normalerweise auch
    🙂


Anmelden zum Antworten