Domanda

Im sto facendo un programma Java SWT che è necessario per funzionare sia su Linux e Windows.

Io uso il seguente codice per l'ascolto di eventi KeyUp:

Control.addListener(SWT.KeyUp, new Listener() {

public void handleEvent(Event arg0) {
 System.out.println("Event");

}

});

Ma questo non innescherà quando nessun controllo è attivo.

Non Qualcuno sa di un posto che posso aggiungere un ascoltatore che agisce come un catch-all?

È stato utile?

Soluzione 3

Non sono stato in grado di trovare una soluzione a questo. Ho il sospetto che non ne esistono

Altri suggerimenti

L'unico modo per farlo che io sappia è mettendo un Filtro sul display. Prendere atto che più shell può operare su un unico display, così si dovrebbe fare attenzione!

shell.getDisplay().addFilter(SWT.KeyDown, new Listener() {
    public void handleEvent(final Event event) {
        System.out.println(event);
    }
});

prova a seguire il metodo della classe di visualizzazione:

public void addListener ( int eventType, Listener listener ) 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top