


Wie gehe ich mit Tastatur- und Mausereignissen im exklusiven Vollbildmodus von Java um?
Verarbeiten von Tastatur- und Mausereignissen im exklusiven Vollbildmodus in Java
Beim Betrieb im passiven Rendering-Modus können die Schnittstellen KeyListener und ActionListener zum Verwalten von Ereignissen verwendet werden, die von generiert werden der Benutzer. Wenn die Anwendung jedoch in den Vollbildmodus wechselt, funktioniert der herkömmliche Ansatz zur Ereignisbehandlung möglicherweise nicht wie erwartet.
In diesem Artikel wird die richtige Methode zur Behandlung von Ereignissen im Vollbildmodus erläutert. Es erweitert den bereitgestellten Grundcode, um die Behandlung von Mausklick- und Tastendruck-Ereignissen zu implementieren und gleichzeitig sicherzustellen, dass der Code prägnant bleibt.
Code-Gerüst für den Vollbildmodus
Das folgende Code-Gerüst bereitet die Bühne für den Vollbildmodus Exklusivmodus und rendert Grafiken in einem Fenster mithilfe eines Timers:
import java.awt.Color; import java.awt.DisplayMode; import java.awt.Graphics2D; import java.awt.GraphicsConfiguration; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; import java.awt.Rectangle; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.image.BufferStrategy; import javax.swing.JFrame; import javax.swing.Timer; public class Applet { Timer timer; JFrame frame; DisplayMode[] displayModes = new DisplayMode[] { new DisplayMode(1280, 800, 32, 60) }; BufferStrategy bufferStrategy; Rectangle bounds; public void init() { GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice device = env.getDefaultScreenDevice(); setIgnoreRepaint(true); GraphicsConfiguration gc = device.getDefaultConfiguration(); frame = new JFrame(gc); device.setFullScreenWindow(frame); if (device.isDisplayChangeSupported()) device.setDisplayMode(displayModes[0]); frame.createBufferStrategy(2); bufferStrategy = frame.getBufferStrategy(); timer = new Timer(1000 / 50, new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { Graphics2D g = null; try { g = (Graphics2D) bufferStrategy.getDrawGraphics(); render(g); } finally { g.dispose(); } bufferStrategy.show(); } }); } private void render(Graphics2D g) { g.setColor(Color.BLACK); g.fillRect(0, 0, bounds.width, bounds.height); } public void start() { timer.start(); } public void stop() { timer.stop(); } }
Mausklick- und Tastendruck-Ereignisbehandlung implementieren
Der folgende Code erweitert die Skelett durch Hinzufügen einer Ereignisbehandlung für Mausklicks und Tastendrücke im Vollbildmodus:
import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; class Applet extends Applet { @Override public void init() { super.init(); this.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { // Handle mouse click event } }); this.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { // Handle key press event } }); } }
Die MouseAdapter-Klasse stellt die notwendigen Methoden zur Behandlung von Mausereignissen, wie z. B. Klicks, bereit. In ähnlicher Weise vereinfacht die KeyAdapter-Klasse die Handhabung von Tastendruckereignissen.
Verwendung
Um diese Ereignisverarbeitungsfunktionen zu nutzen, instanziieren Sie die Applet-Klasse und rufen ihre init()-Methode auf.
Fazit
Dieser Code zeigt, wie Tastatur- und Mausereignisse effektiv verarbeitet werden, während die Anwendung im exklusiven Vollbildmodus ausgeführt wird. Die bereitgestellte Lösung ist einfach, zuverlässig und mit der Vollbildumgebung kompatibel.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit Tastatur- und Mausereignissen im exklusiven Vollbildmodus von Java um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In dem Artikel werden Maven und Gradle für Java -Projektmanagement, Aufbau von Automatisierung und Abhängigkeitslösung erörtert, die ihre Ansätze und Optimierungsstrategien vergleichen.

In dem Artikel werden benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning- und Abhängigkeitsmanagement erstellt und verwendet, wobei Tools wie Maven und Gradle verwendet werden.

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

In dem Artikel werden mit JPA für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden erläutert. Es deckt Setup, Entity -Mapping und Best Practices zur Optimierung der Leistung ab und hebt potenzielle Fallstricke hervor. [159 Charaktere]

Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft