【问题标题】:Pygame no videoPygame没有视频
【发布时间】:2013-05-03 14:16:47
【问题描述】:

我想知道是否有人可以帮助我使用 pygame(Python)。我的代码不断出现错误:

bif ="bg.jpg"
mif = "mouse.png"
import pygame
import sys

from pygame.locals import *

pygame.init()
screen=pygame.display.set_mode((682,415),0,32)
backround= pygame.image.load(bif).convert()
mouse_c=pygame.image.load(mif).convert()
x, y =0,0
movex, movey =0,0
while True:
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
        if event.tpye == KEYDOWN:
            if event.key==K_LEFT:
                movex =-1
            elif event.key==K_RIGHT:
                movex=+1
            elif event.key ==K_UP:
                movey=-1
            elif event.key==K_DOWN:
                movey=+1

我得到的错误是:

Traceback (most recent call last):
  File "C:\Documents and Settings\Aidan\Desktop\Mygame.py", line 15, in <module>
    screen=pygame.display.set_mode((682,415),0,32)
pygame.error: No available video device`

我有一台在 Windows XP 上运行的 Sony Vaio VGN-T1XP。

【问题讨论】:

  • 试试screen=pygame.display.set_mode((682,415)) 可能你通过的深度有问题。
  • 您的桌面是否设置为 32 位色深?尝试 24 位。尝试读取display.Info 的输出。
  • 深度?请解释一下我是 pygame 的菜鸟
  • 我检查了它的 32 我知道你可以编辑
  • 您可以编辑您的评论,而不是评论两次(发表评论后 5 分钟内)。

标签: python pygame


【解决方案1】:

这似乎是您获得的过时硬件/软件的问题。您可以尝试使用 pygame 提交问题,或者尝试自己调试 pygame 以找出原因,但这会很复杂。我真的无法复制它,即使尝试使用我的 windows XP virtualbox。

【讨论】:

    【解决方案2】:

    对我来说,这听起来像是一个深度问题......来自 PyGame 文档:

    “通常最好不要传递深度参数。它将默认为系统的最佳和最快颜色深度。如果您的游戏需要特定的颜色格式,您可以使用此参数控制深度。Pygame 将模拟不可用的颜色深度可能会很慢。”

    您可以在这里找到它: http://www.pygame.org/docs/ref/display.html#pygame.display.set_mode

    因此,最好的解决方案是将标志和深度保留为默认值。到目前为止,我总是这样使用它。来自我的一些旧代码:

    SCREEN = pygame.display.set_mode((1024, 768))
    

    试试这个方法,让我们知道它是否有效。并且在 PyGame 中获得更多乐趣,我真的开始喜欢它了 :D 如果您需要更多好的教程,请随时问我 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-30
      • 2020-10-17
      • 1970-01-01
      • 2015-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      相关资源
      最近更新 更多