Rumah > Java > javaTutorial > Bagaimana Mengendalikan Input Pengguna dalam Mod Eksklusif Skrin Penuh Java?

Bagaimana Mengendalikan Input Pengguna dalam Mod Eksklusif Skrin Penuh Java?

Mary-Kate Olsen
Lepaskan: 2024-12-30 21:01:14
asal
582 orang telah melayarinya

How to Handle User Input in Java's Full-Screen Exclusive Mode?

Mengendalikan Input Pengguna dalam Mod Eksklusif Skrin Penuh dalam Java

Pengenalan

Apabila menjalankan aplikasi Java dalam skrin penuh eksklusif mod, mekanisme pengendalian acara biasa mungkin tidak berfungsi seperti yang diharapkan. Artikel ini meneroka pendekatan yang betul untuk mengendalikan input pengguna daripada papan kekunci dan tetikus dalam mod ini.

Masalah

Mod pemaparan pasif membolehkan penggunaan antara muka KeyListener dan ActionListener untuk mengendalikan input pengguna. Walau bagaimanapun, dalam mod eksklusif skrin penuh, kaedah ini mungkin tidak berfungsi seperti yang dimaksudkan.

Penyelesaian

Rangka berikut menyediakan contoh yang disemak semula yang melaksanakan pengendalian acara untuk klik tetikus dan menekan kekunci dalam mod skrin penuh:

import java.applet.Applet;
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.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.image.BufferStrategy;
import javax.swing.JFrame;
import javax.swing.Timer;

public class applet extends Applet {

    Timer timer;
    JFrame frame;
    DisplayMode[] displayModes = new DisplayMode[] {
            new DisplayMode(1280, 800, 32, 60)
    };

    BufferStrategy bufferStrategy;
    Rectangle bounds;

    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    /**
     * @param args
     */

    public void init() {
        // ... Same as before
        // ...

        // Register key event listeners
        this.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_Q, 0), "EXIT");
        this.getActionMap().put("EXIT", new AbstractAction() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // Exit key handling
            }
        });

        // Register mouse event listeners
        this.addMouseMotionListener(new MouseAdapter() {
            @Override
            public void mouseMoved(MouseEvent e) {
                // Mouse movement handling
            }
        });
    }

    // ... Same as before
    // ...
}
Salin selepas log masuk

Contoh yang disemak ini memastikan acara papan kekunci dan tetikus dikendalikan dengan betul dalam mod eksklusif skrin penuh. Ia mendaftarkan pendengar acara utama menggunakan getInputMap dan getActionMap, dan mendaftarkan pendengar acara tetikus menggunakan addMouseMotionListener.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Input Pengguna dalam Mod Eksklusif Skrin Penuh Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan