日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

python pygame實(shí)現(xiàn)方向鍵控制小球

系統(tǒng) 2107 0

最后一個(gè)項(xiàng)目用到了pygame,? 實(shí)現(xiàn)方向鍵控制小球,對(duì)于模塊不熟悉的我還是查詢了一些資料介紹。

            
import sys
import pygame
from pygame.locals import *
 
def control_ball(event):
 speed = [x,y] =[0,0]# 設(shè)置相對(duì)位移
 speed_offset = 1 #小球的速度
 
# 如果事件的類型是 鍵盤輸入,就根據(jù)方向鍵來求出速度的方向(默認(rèn)是從左往右為1,從上往下為1)
 if event.type == KEYDOWN:
  if event.key == pygame.K_LEFT:
   speed[0] -= speed_offset
   print event.key
 
  if event.key == pygame.K_RIGHT:
   speed[0] = speed_offset
   print event.key
 
  if event.key == pygame.K_UP:
   speed[1] -= speed_offset
   print event.key
 
 
  if event.key == pygame.K_DOWN:
   speed[1] = speed_offset
   print event.key
#如果沒有方向鍵的輸入,則速度為0,小球不動(dòng)
 if event.type in (pygame.K_UP, pygame.K_LEFT, pygame.K_RIGHT, pygame.K_DOWN):
  speed = [0,0]
  
 
 return speed
 
 
#主函數(shù)
def play_ball():
 pygame.init()#初始化
 window_size = Rect(0,0,800,640)#設(shè)置窗口的大小
 
 screen = pygame.display.set_mode(window_size.size)#設(shè)置窗口模式
 pygame.display.set_caption('hello')#設(shè)置窗口標(biāo)題
 ball_image = pygame.image.load('ball.bmp')#載入小球圖片
 back_image = pygame.image.load('ball1.bmp')#載入背景圖片
 ball_rect = ball_image.get_rect()# 獲取小球圖片所在的區(qū)域
 
 while True:
#退出事件的處理
  for event in pygame.event.get():
   if event.type == QUIT:
    sys.exit()
    
  control_speed = control_ball(event)#獲取到小球的方向
  ball_rect = ball_rect.move(control_speed).clamp(window_size)#小球按照方向移動(dòng),并且不會(huì)移出窗口。
 
  screen.blit(back_image,(0,0))#設(shè)置窗口背景,位于(0,0)處,窗口左上角。
  screen.blit(ball_image, ball_rect)#把小球繪制到背景surface上。

  pygame.display.flip()#更新窗口內(nèi)容
  
 
if __name__ == '__main__':
 play_ball() 
          

pygame模塊的第一件事就是初始化其模塊,pygame.init()。

python pygame實(shí)現(xiàn)方向鍵控制小球_第1張圖片

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 鹤峰县| 泽普县| 巧家县| 舞钢市| 滁州市| 芜湖县| 洪洞县| 桦南县| 沁源县| 会宁县| 桂阳县| 禹州市| 金秀| 日土县| 洛阳市| 托克托县| 大渡口区| 海盐县| 马龙县| 淮南市| 上思县| 邯郸县| 东阿县| 黄山市| 池州市| 保山市| 葵青区| 绥宁县| 曲麻莱县| 高邮市| 温州市| 拜泉县| 锦州市| 洮南市| 赤峰市| 五台县| 安龙县| 花莲县| 武宣县| 大丰市| 清涧县|