[Kde-devel-es] Saber quien emite la señal

Chema Ollés jmolles at vodafone.es
Mon May 23 10:04:44 CEST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Chema Ollés escribió:
> hacklet escribió:
> 
>>>Hola a todos,
>>>
>>>estoy intentando hacer una cosa que no se como se
>>>puede hacer.
>>>
>>>Resulta que tengo unos 24 botones que realizan casi la
>>>misma operacion, solo que cambia un poco dependiendo
>>>del boton. Entonces lo que veo mas logico es hacer un
>>>SLOT comun para todos ellos y dentro de este
>>>diferenciar cada operacion dependiendo del boton
>>>pulsado.
>>>
>>>El caso es que no se como se puede detectar quien a
>>>emitido la señal, alguna idea?
>>>
>>>Si hubiera una forma desde una funcion slot detectar
>>>quien emite la señal lo tendria resuelto.
>>>
>>>Un saludo
>>>Pablo
>>>
>>>
>>>
>>>
>>>__________________________________________________
>>>Do You Yahoo!?
>>>Tired of spam?  Yahoo! Mail has the best spam protection around 
>>>http://mail.yahoo.com 
>>>_______________________________________________
>>>Kde-devel-es mailing list
>>>Kde-devel-es at kde.org
>>>https://mail.kde.org/mailman/listinfo/kde-devel-es
>>>
> 
> Hola:
> Yo hace mucho que no programo en qt/kde pero recuerdo que en casos
> asi,utilizaba el nombre de cada uno de los botones,es decir,la propiedad
> name,distinta en cada uno,para que con solo una función,poder distribuir
> el trabajo según boton pulsado.Creo que usaba sender::name o algo
> parecido... Si encuentro algún viejo fichero podré ser más específico.
> Salu2
> --
> Chema Ollés
> Usuario Linux: #198057
> Linux 2.6.12-rc2 #4 SMP Tue May 10 12:16:18 CEST 2005 i686
Hola de nuevo:
No he encontrado ningún programa mío,pero aquí hay una muestra de lo que
te digo,tomado del fichero kmmainview.cpp en el directorio
kdelibs/kdeprint/management
Los propios ficheros de kde son muestras de muchos ejemplos.
*******
void KMMainView::slotHelp()
{
        QString s = sender()->name();
        if ( s == "invoke_help" )
                kapp->invokeHelp( QString::null, "kdeprint" );
        else if ( s == "invoke_web" )
        {
                QStringList args;
                args << "exec" << "http://printing.kde.org";
                kapp->kdeinitExec( "kfmclient", args );
        }
        else
                kdDebug( 500 ) << "Unknown help invokator: " << s << endl;
}
**********
Salu2
- --
Chema Ollés
Usuario Linux: #198057
Linux 2.6.12-rc2 #4 SMP Tue May 10 12:16:18 CEST 2005 i686
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFCkY6b65SpD7GhbzoRAuQtAKCCHqGqiGrUtnqJu5NaZVRgpI8GUgCeOf6s
2nJ4JanUF6Xa3tk9ZtDIpTc=
=mh1q
-----END PGP SIGNATURE-----


More information about the Kde-devel-es mailing list