Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment declencher des evenements en SWT ?

5 réponses
Avatar
textorm37
J'essaye juste de déclencher une action de bouton en code, avec le
selectionEvent, mais pour l'instant, je ne sais pas trop comment m'y
prendre.
Avant de chercher plus en avant, peut être que quelqu'un à la réponse.
Merci d'avance
SL

5 réponses

Avatar
ali k
J'essaye juste de déclencher une action de bouton en code, avec le
selectionEvent, mais pour l'instant, je ne sais pas trop comment m'y
prendre.
Avant de chercher plus en avant, peut être que quelqu'un à la réponse.
Merci d'avance
SL
pas trés claire comm question !!!


Avatar
Christophe M
seb.L wrote:
J'essaye juste de déclencher une action de bouton en code, avec le
selectionEvent, mais pour l'instant, je ne sais pas trop comment m'y
prendre.
Avant de chercher plus en avant, peut être que quelqu'un à la réponse.
Merci d'avance
SL


Salut,

ça serait pas plus simple de mettre une méthode dans l'événement, et
d'appeler ensuite la même méthode pour "simuler" l'événement ?
Comme ça, tu perturbe pas la gestion d'événement avec un "faux" ;-)

Christophe

Avatar
textorm37
pas trés claire comm question !!!
Bon, je reformule :

Des événements sont associés aux controles en SWT :
Le clic sur un bouton déclenche un evenement (une méthode) qui exécute
du code.
J'aimerais 'déclencher' ce clic, via du code dans une autre méthode.
Mais cet événement (WidgetSelected) n'est pas 'appelable', ni
directement, ni en passant par les propriétés et méthodes de mon
controle button (btn_valide).

btn_valide.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
try {
//mon code
}catch (Exception exc) {
}
});

Et pour répondre à christophe, qui me suggère d'écrire une méthode
dans l'événement, ce n'est donc pas possible, puisque cet évenement
EST deja une méthode.
Je ne peux donc pas imbriquer une autre méthode dedans.
Je voudrais donc pouvoir déclencher l'évenement comme :
btn_valide.widgetSelected(...)
mais je ne trouve pas d'accès à cette méthode.
Voila,
merci en tout cas pour l'interêt porté à ce petit problème.

Avatar
Christophe M
seb.L wrote:
pas trés claire comm question !!!


Bon, je reformule :
Des événements sont associés aux controles en SWT :
Le clic sur un bouton déclenche un evenement (une méthode) qui exécute
du code.
J'aimerais 'déclencher' ce clic, via du code dans une autre méthode.
Mais cet événement (WidgetSelected) n'est pas 'appelable', ni
directement, ni en passant par les propriétés et méthodes de mon
controle button (btn_valide).

btn_valide.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
try {
//mon code
}catch (Exception exc) {
}
});

Et pour répondre à christophe, qui me suggère d'écrire une méthode
dans l'événement, ce n'est donc pas possible, puisque cet évenement
EST deja une méthode.
Je ne peux donc pas imbriquer une autre méthode dedans.
Je voudrais donc pouvoir déclencher l'évenement comme :
btn_valide.widgetSelected(...)
mais je ne trouve pas d'accès à cette méthode.
Voila,
merci en tout cas pour l'interêt porté à ce petit problème.


Bien sur que si, tu peux "imbriquer" les appels de méthode :

btn_valide.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
try {
//mon code
MaFonctionDeGestionDevent(e);

}catch (Exception exc) {
}
});


// Avoir de quoi t'as besoin comme paramètre ici
private void MaFonctionDeGestionDevent(SelectionEvent e){
// Faire ton truc...
}


private void maFonctionQuiSimule(){
MaFonctionDeGestionDevent(new SelectionEvent());
}


Voilou..


Avatar
textorm37
Bien sur que si, tu peux "imbriquer" les appels de méthode :

btn_valide.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
try {
//mon code
MaFonctionDeGestionDevent(e);

}catch (Exception exc) {
}
});


// Avoir de quoi t'as besoin comme paramètre ici
private void MaFonctionDeGestionDevent(SelectionEvent e){
// Faire ton truc...
}


private void maFonctionQuiSimule(){
MaFonctionDeGestionDevent(new SelectionEvent());
}


Voilou..


Ah ben oui, je suis naze...
Merci
sl