- Pygame 教程
- Pygame - 主頁
- Pygame - 概覽
- Pygame - Hello World
- Pygame - 顯示模式
- Pygame - Locals 模組
- Pygame - 顏色物件
- Pygame - 事件物件
- Pygame - 鍵盤事件
- Pygame - 滑鼠事件
- Pygame - 繪製形狀
- Pygame - 載入圖片
- Pygame - 在視窗中顯示文字
- Pygame - 移動圖片
- Pygame - 使用數字小鍵盤鍵移動
- Pygame - 使用滑鼠移動
- Pygame - 移動矩形物件
- Pygame - 使用文字作為按鈕
- Pygame - 轉換圖片
- Pygame - 聲音物件
- Pygame - 混音通道
- Pygame - 播放音樂
- Pygame - 播放電影
- Pygame - 使用相機模組
- Pygame - 載入游標
- Pygame - 訪問光碟
- Pygame - Sprite 模組
- Pygame - PyOpenGL
- Pygame - 錯誤和異常
- Pygame 實用資源
- Pygame - 快速指南
- Pygame - 實用資源
- Pygame - 討論
Pygame - 使用數字小鍵盤鍵移動
如果我們想實現遊戲視窗中物件的斜向移動,我們需要使用數字小鍵盤鍵。鍵 4、6、8 和 2 分別對應左、右、上、下箭頭,小鍵盤鍵 7、9、3 和 1 可用於移動物件進行左上、右上、右下、左下斜向移動。Pygame 透過以下值來識別這些鍵 −
K_KP1 keypad 1 K_KP2 keypad 2 K_KP3 keypad 3 K_KP4 keypad 4 K_KP5 keypad 5 K_KP6 keypad 6 K_KP7 keypad 7 K_KP8 keypad 8 K_KP9 keypad 9
示例
對於向左、向右、向上和向下箭頭按壓,x 和 y 座標將像以前一樣增量/減量。對於斜向移動,兩個座標都根據方向而改變。例如,對於 K_KP7 按鍵,x 和 y 都減小 5,而對於 K_KP9,x 增量,y 減量。
image_filename = 'pygame.png'
import pygame
from pygame.locals import *
from sys import exit
pygame.init()
screen = pygame.display.set_mode((400,300))
pygame.display.set_caption("Moving with arrows")
img = pygame.image.load(image_filename)
x = 0
y= 150
while True:
screen.fill((255,255,255))
screen.blit(img, (x, y))
for event in pygame.event.get():
if event.type == QUIT:
exit()
if event.type == KEYDOWN:
if event.key == K_KP6:
x= x+5
if event.key == K_KP4:
x=x-5
if event.key == K_KP8:
y=y-5
if event.key == K_KP2:
y=y+5
if event.key == K_KP7:
x=x-5
y=y-5
if event.key == K_KP9:
x=x+5
y=y-5
if event.key == K_KP3:
x=x+5
y=y+5
if event.key == K_KP1:
x=x-5
y=y+5
pygame.display.update()
廣告