2010-02-01 5 views
3

Je vais avoir une crampe de cerveau - comment puis-je configurer un JTable de sorte que la touche d'entrée se comporte comme un double-clic sur un rangée?swing JTable: tweak "entrer" de sorte qu'il agit comme double-cliquant sur une ligne

La façon dont la force brute « gentil » est d'appeler JTable.getInputMap() et JTable.getActionMap() et ajouter un nouveau nom d'action et une nouvelle Action qui fait un double-clic. Mais il doit y avoir un meilleur moyen, je pense ....

+0

@Jason: J'ai supprimé ma réponse en utilisant un 'KeyListener', j'espère que cela vous aidera à obtenir plus d'attraction pour cette question et peut-être une solution. –

Répondre

1

Votre façon de "force brute" est la norme, avec KeyListener de Peter Lang étant une alternative. À partir de Sun's discussion on Key Bindings:

Une alternative aux raccourcis clavier consiste à utiliser des écouteurs de clé. Les écouteurs clés ont leur place en tant qu'interface de bas niveau pour l'entrée au clavier, mais pour répondre à des touches individuelles, les raccourcis clavier sont plus appropriés et ont tendance à générer un code plus facilement maintenu. Les écouteurs de clés sont également difficiles si la liaison de clé doit être active lorsque le composant n'a pas de focus. Certains des avantages des raccourcis clavier sont qu'ils sont auto-documentés, prennent en compte la hiérarchie de confinement, encouragent les blocs de code réutilisables (objets Action) et permettent de supprimer, de personnaliser ou de partager facilement les actions. En outre, ils facilitent la modification de la clé à laquelle une action est liée. Un autre avantage des actions est qu'elles ont un état activé qui fournit un moyen facile de désactiver l'action sans avoir à suivre le composant auquel elle est attachée.