Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Mendapatkan Keadaan Semasa Kunci dalam Pygame?

Bagaimana untuk Mendapatkan Keadaan Semasa Kunci dalam Pygame?

Barbara Streisand
Barbara Streisandasal
2024-10-30 04:02:03600semak imbas

How to Get the Current State of a Key in Pygame?

Mendapatkan Status Tekan Kekunci dalam Pygame

Tidak seperti kaedah KEYDOWN dan KEYUP yang masing-masing hanya menangkap peristiwa akhbar dan keluaran, memperoleh keadaan semasa sesuatu kunci dalam Pygame memerlukan pendekatan yang berbeza. Untuk mencapai ini, manfaatkan fungsi pygame.key.get_pressed().

Fungsi pygame.key.get_pressed() mengembalikan senarai yang mewakili keadaan semasa semua kekunci yang mungkin. Setiap elemen dalam senarai sepadan dengan kekunci tertentu dan mengandungi sama ada Benar jika kekunci sedang ditekan atau Palsu jika tidak.

Untuk menentukan sama ada kekunci tertentu sedang tidak berfungsi, dapatkan semula keadaan kekunci dengan memanggil pygame.key.get_pressed() dalam gelung aplikasi utama. Selepas itu, nilaikan keadaan kunci yang dikehendaki dengan menyemak elemen yang sepadan dalam senarai. Sebagai contoh, untuk menyemak keadaan kekunci ATAS atau BAWAH:

<code class="python">run = True
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

    keys = pygame.key.get_pressed()
    if keys[pygame.K_UP]:
        # Code to handle key down
    if keys[pygame.K_DOWN]:
        # Code to handle key down</code>

Perhatikan bahawa keadaan kunci hanya dikemas kini apabila acara dikendalikan oleh pygame.event.pump() atau pygame.event.get( ).

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Keadaan Semasa Kunci dalam Pygame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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