Manejo de pulsaciones de teclas en GTK + (gtkD)
-
05-09-2019 - |
Pregunta
Estoy jugando con gtkD (unión de una D para GTK +)
Tengo un objeto window
, instancia de gtk.MainWindow
. Quiero manejar las pulsaciones de teclas en él.
- ¿Cómo?
- ¿Cómo puedo lidiar con teclas especiales (por ejemplo, teclas de flecha, adelante / atrás, etc)?
PS Sé que este tipo de preguntas pueden ser contestadas con Google y demás, pero he visto mucho más simples preguntas "" en la stackoverflow, por lo que pensé que pide no hace daño.
Además, a veces, las cosas básicas tienden a ser enterrado debajo de páginas de documentos.
Solución
Aquí es código de ejemplo que puede ayudar
import gdk.Keysyms; //keys enums are defined here
private void func(Button sender)
{
//button pressed
}
but.addOnClicked(&func);
private bool func2(GdkEventKey* ev, Widget sender)
{
if(ev.keyval == GdkKeysyms.GDK_Tab)
return true; //we handle Tab ourselves and prevents default behaviour
else
return false; //we didnt handle it so gtk does default behaviour
}
win.addOnKeyPress(&func2);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow