Question

Je suis jouer avec gtkD (un D obligatoire pour GTK +)

J'ai un objet window, instance de gtk.MainWindow. Je veux gérer les appuis sur elle.

  • Comment?
  • Comment traiter avec les touches spéciales (par exemple les touches fléchées, pgup / pgdn etc)?

PS Je sais que ce genre de questions peut répondre avec Google et d'autres choses, mais j'ai vu beaucoup « plus simples » questions sur StackOverflow, donc je me suis demande ne fait pas mal.

De plus, parfois, les choses de base ont tendance à être burried dans les pages de documentation.

Était-ce utile?

La solution

Voici un exemple de code qui peut aider

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);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top