Taste zwischenspeichern?

Extremefall

Bekanntes Mitglied
Hallo,
kennt ihr eventuell ein gutes Tutorial (am besten mit Quellcode), wo ich erfahre, wie ich Tasten zwischenspeichern kann. Ich möchte nämlich einen KeyListener implementieren, der eine Aktion durchführt, wenn die Tastenkombination Strg+Alt+Entf gedrückt worden ist.

Hier ein erster Versuch von mir:
Java:
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JFrame;

public class KeyLogger extends JFrame {
	// Keys
	boolean alt = false;
	boolean delete = false;
	boolean control = false;

	public KeyLogger() {
		setExtendedState(JFrame.MAXIMIZED_BOTH);
		setUndecorated(true);
		setVisible(true);
		setAlwaysOnTop(true);
		this.addKeyListener(new EventHandler());
	}

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

	class EventHandler implements KeyListener {
		public void keyPressed(KeyEvent e) {
			if (e.getKeyCode() == KeyEvent.VK_DELETE) {
				delete = true;
			}
			if (e.getKeyCode() == KeyEvent.VK_ALT) {
				alt = true;
			}
			if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
				control = true;
			}
			if (delete && alt && control) {
				System.out.println("drring");
			}
		}

		@Override
		public void keyReleased(KeyEvent e) {
			if (e.getKeyCode() == KeyEvent.VK_CONTROL
					&& e.getKeyCode() == KeyEvent.VK_ALT
					&& e.getKeyCode() == KeyEvent.VK_DELETE) {
				System.out.println('c');
			}

		}

		@Override
		public void keyTyped(KeyEvent e) {
			if (e.getKeyCode() == KeyEvent.VK_CONTROL
					&& e.getKeyCode() == KeyEvent.VK_ALT
					&& e.getKeyCode() == KeyEvent.VK_DELETE) {
				System.out.println('c');
			}
			if (KeyEvent.VK_ALT == e.getKeyCode()) {
				System.out.println("ALT");
			}
			if (KeyEvent.VK_CONTROL == e.getKeyCode()) {
				System.out.println("STRG");
			}
			if (KeyEvent.VK_DELETE == e.getKeyCode()) {
				System.out.println("ENTF");
			}
		}
	}
}

Wie kann ich so etwas einfach realisieren?
 

Volvagia

Top Contributor
Cntr, Alt, Delete ist eine schlechte Idee. Aber das ist ja klar. ^^

Java:
package pak;

import java.awt.EventQueue;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JFrame;

public class Listener extends JFrame implements KeyListener
{
	public Listener()
	{
		setSize(500, 500);
		setLocationRelativeTo(null);
		addKeyListener(this);
		setVisible(true);
		requestFocus();
	}
	public static void main(String[] args)
	{
		EventQueue.invokeLater(new Runnable() {
			public void run()
			{
				new Listener();
			}
		});
	}
	public void keyPressed(KeyEvent e)
	{
		if(e.getKeyCode() == KeyEvent.VK_F && e.isControlDown() && e.isAltDown())
			System.out.println("Cntr, Alt und F gedrückt.");
			
	}
	public void keyTyped(KeyEvent e) {}
	public void keyReleased(KeyEvent e) {}
}

PS: Wenn du eine eigene Klasse zum Event Handlen benutzt, verwende bei Listener mit mehr als 1 Methode besser die Adapterklassen.
Und KeyType braucht man so gut wie nie.
 
Zuletzt bearbeitet:

Extremefall

Bekanntes Mitglied
Wie kann ich denn Ctrl+alt+delete als Tastenkombination nutzen? Es muss doch auch irgendwie möglich sein oder etwa nicht? Denn das war ja genau mein Ziel. Ist so etwas mit JAVA zu realisieren und wenn ja, wie?
 

damtre

Aktives Mitglied
Also ich denke, dass das nicht möglich ist. Vermute diese Tastenkombination ist unter Windows einfach festgelegt und führt zwangsläufig dazu, dass der Taskmanager geöffnet wird. Musst dir wohl ne andere Kombination ausdenken! ;)
 

Volvagia

Top Contributor
Es gibt schon Programme, die es blocken. Also nicht über die Registrie per Rechte, ich denke die fangen es einfach an. Aber dabei wird man ohne JNI wohl nicht weit kommen. Außerdem könnte die Tastenkombination unter anderen OS's auch Spezialfunktionen haben. An solche Standarts sollte man sich imho halten, man schreibt ja auch keinen Server der auf Port 80 wartet. (Es sei denn, man schreibt natürlich einen Webserver.)

Wenn wärend den Ausführen eine Exception fliegt und das Programm hängt, hat man sowieso ein Problem.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Ergebnisse zwischenspeichern (Analog zu ans-Taste bei Taschenrechnern) Java Basics - Anfänger-Themen 3
H Counter durch gepresste Taste nur auf 1 erhöhen und nicht durchzählen lassen Java Basics - Anfänger-Themen 7
B Button soll sowohl auf Klicken als auch auf die Enter-Taste reagieren Java Basics - Anfänger-Themen 9
D Wie frage ich ab ob die Linke maus Taste gedrückt wurde? Java Basics - Anfänger-Themen 3
Xentox501 keyevent.VK_LEFT wird beim drücken jeder belibigen Taste aktiv. Java Basics - Anfänger-Themen 3
Z Enter Taste alle 0,5 Sekunden ausführen Java Basics - Anfänger-Themen 1
P Weiter erst bei Drücken de Enter-TAste Java Basics - Anfänger-Themen 1
B Taste "Enter" drücken in einem anderen Programm? Java Basics - Anfänger-Themen 6
R Input/Output Tastenschläge einer Taste zählen Java Basics - Anfänger-Themen 14
H Methoden Implementieren "Drücken Sie eine beliebige Taste" Java Basics - Anfänger-Themen 5
T MouseListener, recht Taste Java Basics - Anfänger-Themen 2
T JFrame per Taste schließen Java Basics - Anfänger-Themen 15
W Befehl ausführen bei Mausklick + gedrückte Strg-Taste Java Basics - Anfänger-Themen 2
Zettelkasten Tabulator-Taste? Java Basics - Anfänger-Themen 2
B 2 Textfelder Enter Taste Java Basics - Anfänger-Themen 3
F Applet mit KeyListener, "Alt"-Taste und Konflikt mit Browser Java Basics - Anfänger-Themen 2
J Escape taste geht ohne cursor im textfeld nicht. Java Basics - Anfänger-Themen 4
P "Enter"-Taste mit Button verknüpfen Java Basics - Anfänger-Themen 3
E AWTEventListener - Taste gedrückt oder los gelassen? Java Basics - Anfänger-Themen 2
D KeyEvent Taste blockieren. Java Basics - Anfänger-Themen 2
R Taste gedrückt = Grafik zeichen ?!? Java Basics - Anfänger-Themen 8
E Mit Taste Methode aufrufen Java Basics - Anfänger-Themen 7
C Konsolenanwendung auf belibige Taste warten Java Basics - Anfänger-Themen 2
D Erstellte Textfelder in Applet mit Tab - Taste anspringen Java Basics - Anfänger-Themen 3
M MenuShortcut nur mittels Shift+Taste Java Basics - Anfänger-Themen 3
G Enter Taste abfangen Java Basics - Anfänger-Themen 11
G KeyListener für die Taste "/" Java Basics - Anfänger-Themen 5
F while mit Enter-Taste abbrechen Java Basics - Anfänger-Themen 13
G Leertaste bei Button auf Enter Taste ändern? Java Basics - Anfänger-Themen 6
C Einloggen auch per ENTER Taste (KeyListener Problem) Java Basics - Anfänger-Themen 8
C Erkennen einer gedrückten Taste Java Basics - Anfänger-Themen 6
V Mausklick mit rechter Taste abfangen? Java Basics - Anfänger-Themen 8
P JOptionPane und Tab-Taste Java Basics - Anfänger-Themen 4
S wie bastelt man eine pause-taste Java Basics - Anfänger-Themen 5
JD_1998 Arrays einlesen, zwischenspeichern und wieder ausgeben Java Basics - Anfänger-Themen 8
J Selektiertes Element von jComboBox zwischenspeichern und wieder einsetzen Java Basics - Anfänger-Themen 0
H Variablen einer Schleife zwischenspeichern Java Basics - Anfänger-Themen 2
M Referenz geht bei Zwischenspeichern verloren (ArrayList) Java Basics - Anfänger-Themen 4
A Erste Schritte Information zwischenspeichern und von einer anderen Klasse auslesen Java Basics - Anfänger-Themen 5
O Regex zwischenspeichern Java Basics - Anfänger-Themen 6
T Beliebig viele Werte in Array zwischenspeichern Java Basics - Anfänger-Themen 15
S Daten zwischenspeichern Java Basics - Anfänger-Themen 8
B Integer zwischenspeichern Java Basics - Anfänger-Themen 7
P Objekt zwischenspeichern ? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben