当前位置: 首页 > 知识库问答 >
问题:

按空格键怎么让音乐播放

龙志勇
2023-03-14

我想创建一个非常简单的应用程序,当你按下空格键时,它会开始一首歌曲,但当我启动应用程序并按下空格键,我只会听到“砰”的一声,什么也不会开始。没有音乐。

代码如下:

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()

共有3个答案

岳京
2023-03-14

我想你误解了皮游戏事件的用途。你应该尝试使用 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()
竺鸿骞
2023-03-14

我不知道为什么代码不起作用,但我知道如果你使用mp3文件,它确实有效。试试这个:

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')

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:
            pygame.mixer.music.play()

如果您想使用.wav文件,可以在线找到.mp3.wav

柴英锐
2023-03-14

好的,非常感谢你们!它现在完美地工作。如果有人遇到与我相同的问题,这是最终代码:

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()
 类似资料:
  • 问题内容: 我目前正在编写一些聊天程序,现在想通过客户端命令播放音乐,例如: 因此,链接将从发送歌曲的客户端发送到服务器。然后,服务器应 不 下载歌曲,而是将其流式传输到每个客户端(他们也不应下载)。问题是,我不知道如何通过基于TCP的连接流mp3。 我的问题是,是否有人可以向我提供我所需要的库/教程/思想/代码示例。 作为替代方案,直接从一个客户的计算机流式传输音乐也是可以的。如果我(作为客户端

  • 基于jPlyer开发的音乐播放插件. 支持如下功能: 1,进度条播放 。 2,上一首,下一首,随机播放 。 3,播放完每一首后,自动播放下一首,如果下一首是最后一首,则自动播放第一首。 4,支持鼠标滚动操作,能上下翻滚屏幕。 5,歌曲时间 倒计时 ,而不是从0开始计时。 效果演示地址: http://www.cssrain.cn/jPlayer/jPlayerV2.0/demo.html

  • 用ios自带的AVAudio实现的音乐播放器。可以播放存放在电脑里面的音乐文件,可以调整声音音量。播放的时候界面会有下雪的效果。可以作为练习动画和音频播放的例子。 [Code4App.com]

  • Decibel 是一个 GTK+ 的音乐播放器。

  • MPlayer音乐播放器 MPlayer V2.0.0贺新春版于2017.01.01正式发布,本次更新要点: 代码重写,拆分核心功能和特效,只为更好的自定义 支持HTML结构自定义,只需添加指定class即可 新增诸多API接口,方便调用 删除部分无用的配置项 新增多个回调函数 新增多个配置项 截图预览 使用方法 var player = new MPlayer({ // 容器选择器名称

  • 我在我的应用程序中编写了这段代码 接收器.java 它工作完美,但是我注意到屏幕关闭时播放音频有延迟。我想这是因为设备在启动关闭状态之前会调暗屏幕。 我希望它在单击触发关闭状态的操作(例如单击电源按钮、手势或双击以唤醒和睡眠)时播放关闭音频。在这种情况下,我希望它在触发电源按钮时播放。 有办法让这成为可能吗?