Keyboard Shortcut

Status
Nicht offen für weitere Antworten.

NewDesigner

Mitglied
Hallo,

weiss jemand wie ich mehrere keyboard shortcuts auf einen Button hinzufüge.
Im moment füge ich ALT+L aber ich möchte noch das return hinzufügen.

Mein bisheriger Code sieht so aus:
Code:
...
        loginButton.getAccessible().addAccessibleListener(new AccessibleAdapter() {
            public void getKeyboardShortcut(AccessibleEvent e) {
                e.result = "ALT+L";
            }
        });
...

Viele Grüsse
 

NewDesigner

Mitglied
Ähm
sorry hab mich wohl mit meiner Frage nicht klar geäusert.

Also ich bin in einer Oberfläche in einem Textfeld und will dann z. B. mit
Code:
return oder STRG+S
einen Button ausführen.

Ich benutze SWT hab aber nix gefunden.
Habt ihr ein Beispiel parat oder so....

Viele Grüsse
 

vogella

Bekanntes Mitglied
Hallo,

also mit normalen Hausmittel bei Java so, für Enter und S.

Code:
m_table.addKeyListener(new KeyListener() {
			public void keyPressed(KeyEvent e) {
				if (e.getKeyCode() == KeyEvent.ENTER|| e.getKeyCode() == KeyEvent.VK_S) {
					System.out.println("Easy?");
				}

			}

			public void keyTyped(KeyEvent e) {
			}

			public void keyReleased(KeyEvent arg0) {
			}

		});

Viele Grüße, Lars
 

André Uhres

Top Contributor
NewDesigner hat gesagt.:
..weiss jemand wie ich mehrere keyboard shortcuts auf einen Button hinzufüge..
Hier die Vorgehensweise im allgemein üblichen Oberflächen-Design:
Code:
package basics;
/*
 * ShortcutsDemo.java
 */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ShortcutsDemo extends JFrame {
    final private JButton btSave;
    final private JTextField tfInput;
    final private JToolBar toolbar;
    final private JMenuBar menubar;
    final private JMenu fileMenu;
    final private JMenuItem miSave;
    public ShortcutsDemo() {
        super("Shortcuts Demo");
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        setSize(400,300);
        setLocationRelativeTo(null);
        //JComponents erzeugen:
        menubar = new JMenuBar();
        fileMenu = new JMenu("File");
        miSave = new JMenuItem("Save");
        toolbar = new JToolBar();
        tfInput = new JTextField("aha");
        btSave = new JButton("Save");
        //Layout:
        fileMenu.add(miSave);
        menubar.add(fileMenu);
        setJMenuBar(menubar);
        toolbar.add(tfInput);
        toolbar.add(btSave);
        toolbar.setFloatable(false);
        getContentPane().add(toolbar, BorderLayout.NORTH);
        //Shortcuts:
        btSave.setMnemonic('S');
        fileMenu.setMnemonic('F');
        miSave.setMnemonic('S');
        miSave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_MASK));
        getRootPane().setDefaultButton(btSave);
        //Listener:
        ActionListener saveListener = new ActionListener() {
            public void actionPerformed(final ActionEvent evt) {
                System.out.println("Saved: "+tfInput.getText());
            }
        };
        btSave.addActionListener(saveListener);
        miSave.addActionListener(saveListener);
    }
    public static void main(final String args[]) {new ShortcutsDemo().setVisible(true);}
}
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben