我需要你的帮助。 (但首先,我不是英国人,所以我的词汇可能有点愚蠢,我很抱歉)
因此,我想创建一个非常简单的应用程序,当您按空格键时会启动一首歌曲,但是当我启动该应用程序并按空格键时,我只是听到“ pop”的声音,而且什么也没有开始。没有音乐。
代码如下:
import pygame
from pygame.locals import *
pygame.init()
backimage = pygame.display.set_mode((395, 702), RESIZABLE)
fond = pygame.image.load("background.jpg").convert()
backimage.blit(fond, (0,0))
pygame.display.flip()
pygame.mixer.pre_init(42000,-16,1,2048)
pygame.mixer.init()
musik = pygame.mixer.Sound(b'musik.wav')
continuer = 1
while continuer == 1:
for event in pygame.event.get():
if event.type == QUIT:
continuer = 0
for event in pygame.event.get():
if event.type == KEYDOWN and event.key == K_SPACE:
musik.play()
如果您需要任何说明,我在这里。 我到处搜索过,却找不到任何可以帮助我的东西。
很抱歉,如果这个问题没有得到正确回答,这是我的第一个话题,所以我真的不知道它是如何工作的。
感谢您的帮助,祝您愉快。
谢尔盖
答案 0 :(得分:1)
好,非常感谢你们!现在,它可以完美运行。 如果有人和我有同样的问题,这是最终的代码:
import pygame
from pygame.locals import *
pygame.init()
backimage = pygame.display.set_mode((395, 702), RESIZABLE)
fond = pygame.image.load("background.jpg").convert()
backimage.blit(fond, (0,0))
pygame.display.flip()
pygame.mixer.init()
pygame.mixer.music.load(b'musik.mp3')
pygame.event.clear()
while True:
event = pygame.event.wait()
if event.type == QUIT:
pygame.quit()
sys.exit()
elif event.type == KEYDOWN and event.key == K_SPACE:
pygame.mixer.music.play()
elif event.type == KEYUP and event.key == K_SPACE:
pygame.mixer.music.stop()
再见,祝你愉快!
谢尔盖
答案 1 :(得分:0)
我不知道为什么代码不起作用,但是如果您使用mp3文件,我知道它确实起作用。试试这个:
{metadata:
{validStart: "2014-04-03T10:00:00",
validEnd: "9999-12-31T11:59:59Z"}
};
如果要使用.wav文件,可以在线找到.wav到.mp3
答案 2 :(得分:0)
我认为您误解了pygame.event
的用法。您应该尝试使用pygame.event.wait():
pygame.event.clear()
while True:
// wait until new event happens - blocking instruction
event = pygame.event.wait()
if event.type == QUIT:
pygame.quit()
sys.exit()
elif event.type == KEYDOWN and event.key = K_SPACE:
musik.play()
最佳