Keylistener

CosmoKey

Mitglied
Hallo zusammen.


ich versuche eine tastatureingabe wie z.B. strg-b abzufangen. das bekomme ich leider nicht hin.

ich hab den keylistener impementiert und die benötigten funktion angelegt. aber es klappt einfach nicht:

PHP:
if (ke.isControlDown()) {
			if (ke.getKeyChar() == 'b') {
				System.out.println("strg-b");
			}
		}

leider ist der keychar aber kein 'b' sondern irgendein sonderzeichen.


hat jemand einen lösungvorschlag

besten dank im vorraus
 
Hallo Cosmo,

schau mal hier:

Code:
import java.awt.event.ActionEvent;

import javax.swing.AbstractAction;
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.KeyStroke;

public class KeyStrokeExample extends JFrame {

	JTextArea textArea = new JTextArea();
	
	public KeyStrokeExample() {
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setSize(200,300);
		setLocationByPlatform(true);
		add(textArea);
		setVisible(true);

		textArea.getInputMap().put(KeyStroke.getKeyStroke("ctrl B"),
				"actionName");

		textArea.getActionMap().put("actionName",
				new AbstractAction("actionName") {
					public void actionPerformed(ActionEvent evt) {
						textArea.setText("Hallo");
					}
				});
	}

	public static void main(String[] args) {
		new KeyStrokeExample();
	}
}


Vg Erdal
 
Zurück