簡單學習自小甲魚視頻教學(筆記)
實現功能:
運行后自動播放背景音樂,單擊左鍵播放音效①,單擊右鍵播放音效②,
空格鍵控制暫停背景音樂與恢復背景音樂,並且實現播放圖標的切換。
代碼如下:

1 import pygame 2 import sys 3 from pygame.locals import * 4 5 pygame.init() 6 pygame.mixer.init() # 初始化混音器模塊 7 # 音效可以同時播放多個,而music只能同時播放一個 8 pygame.mixer.music.load('BG.ogg') # 背景音樂通常用.ogg格式 9 pygame.mixer.music.set_volume(0.2) # 設置音量 10 pygame.mixer.music.play() # 播放音樂 11 12 sound1 = pygame.mixer.Sound('M1.wav') # 音效通常用.wav格式 13 sound1.set_volume(0.2) 14 sound2 = pygame.mixer.Sound('M2.wav') 15 sound2.set_volume(0.2) 16 17 bg_size = width, height = 300, 200 18 screen = pygame.display.set_mode(bg_size) 19 pygame.display.set_caption('Music') 20 21 pause = False 22 23 pause_img = pygame.image.load('pause.png').convert_alpha() 24 unpause_img = pygame.image.load('unpause.png').convert_alpha() 25 pause_rect = pause_img.get_rect() 26 pause_rect.left, pause_rect.top = (width - pause_rect.width) // 2, (height - pause_rect.height) // 2 27 28 clock = pygame.time.Clock() 29 30 while True: 31 for event in pygame.event.get(): 32 if event.type == QUIT: 33 sys.exit() 34 35 if event.type == MOUSEBUTTONDOWN: 36 if event.button == 1: # 左鍵 37 sound1.play() 38 if event.button == 3: # 右鍵 39 sound2.play() 40 41 if event.type == KEYDOWN: 42 if event.key == K_SPACE: # 空格 43 pause = not pause 44 45 screen.fill((255, 255, 255)) # 填充背景 46 47 if pause: 48 screen.blit(pause_img, pause_rect) 49 pygame.mixer.music.pause() # 暫停播放 50 else: 51 screen.blit(unpause_img, pause_rect) 52 pygame.mixer.music.unpause() # 恢復播放 53 54 pygame.display.flip() 55 56 clock.tick(30) # 幀率為30
我的素材下載:https://files.cnblogs.com/files/GraceSkyer/20180202.zip
備注:我這png圖片之前被我調小失真了,但是不影響該演示,就不改圖了...