除屏幕 blit 外还显示 MoviePy 预览

问题描述

我遇到了问题。 我正在创建我想要的游戏菜单

  1. 背景为视频文件(使用 MoviePy)
  2. 视频上的按钮

问题是视频正在显示,但button1没有。 请帮忙...

from moviepy.editor import *
import pygame
from pygame import mixer
import os
import cv2
print(os.getcwd())

# Initialization the PyGame
pygame.init()

# Create the screen
WIN = pygame.display.set_mode((0,0),pygame.FULLSCREEN)

# Menu Background
background = pygame.image.load('Assets/background.png')
button1 = pygame.image.load('Assets/button.png')


# Background SOUND
mixer.music.load('Assets/mainmenumusic.mp3')
mixer.music.set_volume(0.2)
mixer.music.play(-1)

# Game TITLE and ICON
pygame.display.set_caption("Game Launcher") # title of the game
icon = pygame.image.load('Assets/icon.png') # define the icon variable
pygame.display.set_icon(icon) # set the window icon to the icon variable

# FPS Lock
FPS = 60



clip = VideoFileClip('Assets/particles.mp4',audio=False)

# Game loop
clock = pygame.time.Clock()
running = True
while running:
    clock.tick(FPS)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
    WIN.blit(button1,(960,540))
    clip.preview(fullscreen=True)
    pygame.display.update()

解决方法

该按钮未显示,因为您在背景视频之前对其进行了 blit,因此视频覆盖了它。你可以试试:

clip.preview(fullscreen=True)
WIN.blit(button1,(960,540))

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...