#python #pygame
Вопрос:
Я получаю эту ошибку всякий раз, когда пытаюсь выполнить свой pygame
код: pygame.error: video system not initialized
from sys import exit
import pygame
from pygame.locals import *
black = 0, 0, 0
white = 255, 255, 255
red = 255, 0, 0
green = 0, 255, 0
blue = 0, 0, 255
screen = screen_width, screen_height = 600, 400
clock = pygame.time.Clock()
pygame.display.set_caption("Physics")
def game_loop():
fps_cap = 120
running = True
while running:
clock.tick(fps_cap)
for event in pygame.event.get(): # error is here
if event.type == pygame.QUIT:
running = False
screen.fill(white)
pygame.display.flip()
pygame.quit()
exit()
game_loop()
#!/usr/bin/env python
Ответ №1:
Ты никуда не звонил pygame.init()
.
См. Основное руководство по вводной части или специальное руководство по импорту и инициализации, в котором объясняется:
Прежде чем вы сможете многое сделать с pygame, вам нужно будет его инициализировать. Самый распространенный способ сделать это-просто сделать один звонок.
pygame.init()
Это будет попытка инициализировать все модули pygame для вас. Не все модули pygame необходимо инициализировать, но это автоматически инициализирует те, которые это делают. Вы также можете легко инициализировать каждый модуль pygame вручную. Например, чтобы только инициализировать модуль шрифта, вы просто вызовете.
В вашем конкретном случае, вероятно pygame.display
, это жалоба на то, что вы позвонили либо its set_caption
, либо its flip
, не позвонив init
сначала. Но на самом деле, как говорится в руководстве, лучше просто init
все наверху, чем пытаться выяснить, что именно нужно инициализировать, когда.
Ответ №2:
Изменение кода на этот позволяет избежать этой ошибки. во время работы: clock.tick(fps_cap)
for event in pygame.event.get(): #error is here
if event.type == pygame.QUIT:
running = False
pygame.quit()
if running:
screen.fill(white)
pygame.display.flip()
Ответ №3:
Вы получаете ошибку, потому что пытаетесь установить заголовок окна (с set_caption()
), но вы не создали окно pygame, поэтому ваша screen
переменная-это просто кортеж, содержащий размер вашего будущего окна.
Чтобы создать окно pygame, вам нужно позвонить pygame.display.set_mode(windowSize)
.
Удачи 🙂
Ответ №4:
Недавно у меня возникла эта проблема, и я обнаружил странную и необычную ошибку в написанном мной коде-только после того, как прочитал его и перечитал дюжину раз в течение 10 минут, пытаясь запустить файл (который выглядел идеально) дюжину раз.
Там был pygame.init()
. Там была screen = pygame.display.set_mode((size))
переменная размера, доступная в глобальном пространстве имен.
Оказывается, это был основной игровой цикл.
# main game loop
while RUNNING == True:
for tneve in pygame.event.get():
if tneve.type == QUIT:
print(tneve)
RUNNING = False
loop()
render()
CLOCK.tick(FPS)
cleanup()
# End
Какая боль!
P.S. Проблема заключается в слишком большом отступе всего, что приведено ниже RUNNING = False
.
Комментарии:
1. Это отличная история, Тим, и спасибо, что поделился с нами, но она не отвечает на вопрос и описывает другую проблему.
Ответ №5:
- Если вы это сделаете
pygame.init()
, то решите проблему с инициализацией видеосистемы. но вы получаете следующую ошибку, например:
(
AttributeError: tuple object has no attribute 'fill'
) это.
- эта проблема решается, когда вы делаете это
screen = pygame.display.set_mode((600, 400))
но не делать так, как
screen = screen_width, screen_height = 600, 400
- Тогда вся проблема будет решена.
Ответ №6:
Я внес некоторые изменения в ваш код:
import os
import sys
import math
import pygame
import pygame.mixer
from pygame.locals import *
pygame.init()
black = 0, 0, 0
white = 255, 255, 255
red = 255, 0, 0
green = 0, 255, 0
blue = 0, 0, 255
screen = pygame.display.set_mode((600, 400))
clock = pygame.time.Clock()
pygame.display.set_caption("Physics")
while True:
clock.tick(120)
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
screen.fill(green)
pygame.display.flip()
Ответ №7:
Вам просто нужно добавить
exit()
Чтобы остановить выполнение
примера кода :
for event in pygame.event.get(): #error is here
if event.type == pygame.QUIT:
running = False
exit() # Solution
Ответ №8:
Вы должны добавить:
pygame.init()
Прежде чем выйти из дисплея, вы должны остановить цикл while.
Ответ №9:
Если вы используете class
для своего pygame
окна, не используйте pygame.init()
в своем class
. Используйте pygame.init()
в нижеприведенных библиотеках.
Ответ №10:
- Вам необходимо инициализировать pygame с помощью этой команды
pygame.init
If the problem is not solved then following this step
- эта проблема возникает при использовании бета-версии.
- поэтому я предлагаю, пожалуйста, использовать новую, старую версию(если сейчас есть python 3.8, вам нужно установить python 3.7).
- Теперь перейдите к терминалу python и установите pygame (pip install pygame)
- теперь проблема решена…
In this post, you will learn about Pygame such as how to fix Pygame. error: video system not initialized so let’s go and start.
Running your pygame code will result in the following error: pygame.error: video system not initialized. It is necessary to initialize Pygame before you can do much with it. This is usually done by calling one method.
Pygame allows you to make pretty much the simplest of codes. The program creates a window and allows you to close it. Unfortunately, I am getting the error pygame.error: video system not initialized.
Contents
- 1 Fix Pygame. error: video system not initialized
- 2 pygame.error: video system not initialized
- 2.1 Output
- 3 NameError: name ‘QUIT’ is not defined
- 4 ModuleNotFoundError: No module named ‘pygame’
- 5 Pygame error, No video mode has been set
Fix Pygame. error: video system not initialized
According to my search online, most people fail to call pygame.init(). I don’t know why I’m receiving this error. Throughout your game, you haven’t called pygame.init(). This is about the most straightforward program you can write in Pygame. It creates a window and allows you to close it. However, I am getting the following error pygame.error: video system not initialized
It would be best to say that this error occurs when you quit the game. All the pygame modules are uninitialized with pygame. Quit (), but the while loop continues to run, and pygame still runs. The display. update() is called, the video system becomes uninitialized, and errors occur. You can fix this by implementing the following:
pygame.error: video system not initialized
import pygame running = True while running: pygame.init() for event in pygame.event.get(): if event.type == quit: running = False
# When the while loop is complete, uninitialized pygame and exit the program. pygame.quit()
Output
pygame 2.1.0 (SDL 2.0.16, Python 3.6.5)
Hello from the pygame community. https://www.pygame.org/contribute.html
Sys.exit() # import sys at the top of the module.
- Pygame needs to be initialized using this command pygame. If the problem is not resolved, follow these steps:
- Using a beta version causes this problem.
- As a result, I suggest you use the new, old version(if you are using 3.8 Pythons, you need to install Python 3.7)
- Now run pip install pygame in the python terminal (pip install pygame).
- The problem has now been resolved.
NameError: name ‘QUIT’ is not defined
Use this word “quit” instead of “QUIT”
There’s no call to pygame. init() anywhere.
Learn about Import and Initialize in the basic Intro tutorial or the specific Import and Initialize tutorial, which explains that Pygame needs to be initialized before doing much with it. You usually need to make one call to do this. pygame.init()
ModuleNotFoundError: No module named ‘pygame’
- Go to CMD and run this command: pip install pygame.
- If it will work perfectly then no need to again install.
- That’s all.
Most of the time you will face this error while running any Python game with the library of Pygame so, be aware of the bugs. Let’s fix it also.
Read More: Way to fix Python indentation
Pygame error, No video mode has been set
You may be getting this error because you don’t have the right video driver installed, or your graphics card isn’t powerful enough to run pygame. You can try updating your video driver or trying a different graphics card.
Код:
import pygame
import sys
from gun import Gun
def run():
pygame.init()
screen = pygame.display.set_mode((1200, 800))
pygame.dysplay.set_caption("Космические защитники")
bg_color = (0, 0, 0)
gun = Gun(screen)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.fill(bg_color)
gun.output()
pygame.display.flip()
run()
Ошибка:
Traceback (most recent call last):
File "D:Python codemy 1 game.py", line 23 in <module>
run()
File "D:Python codemy 1 game.py", line 9, in run
pygame.display.set_caption("Космические защитники")
AttributeError: module 'pygame' has no attribute 'dysplay'. Did you mean: 'display' ?
-
Вопрос задан20 мая 2022
-
235 просмотров
Пригласить эксперта
Привет, у тебя написанно что в модуле pygame нету метода dYsplay, вместо pygame.dysplay.set_caption нужно написать pygame.display.set_caption ошибка в букве,
И в следующий раз, пожалуйста загугли свою проблему, или прочти ее и переведи в переводчике, ведь интегрированная среда тебе сказала: может вы имели ввиду display?
-
Показать ещё
Загружается…
10 февр. 2023, в 02:20
3000 руб./за проект
10 февр. 2023, в 01:33
1500 руб./за проект
10 февр. 2023, в 00:54
2000 руб./в час
Минуточку внимания
pygame.display
Модуль, используемый для управления окном и отображением экрана в Pygame.
Примечание. Чтобы адаптироваться к контексту, в этом документе отображение иногда переводится как «отображение», а иногда как «интерфейс отображения».
функция
- pygame.display.init () — Инициализирует модуль дисплея
- pygame.display.quit () — Завершить отображение модуля
- pygame.display.get_init () — Если дисплейный модуль был инициализирован, вернуть True
- pygame.display.set_mode () — Инициализирует окно или экран для отображения
- pygame.display.get_surface () — Получить текущий отображаемый объект Surface
- pygame.display.flip () — Обновляет весь объект Surface для отображения на экране
- pygame.display.update () — Обновляет часть отображения интерфейса программного обеспечения
- pygame.display.get_driver () — Получить имя серверной части дисплея Pygame
- pygame.display.Info () — Создать информационный объект об интерфейсе дисплея
- pygame.display.get_wm_info () — Получить информацию о текущей оконной системе
- pygame.display.list_modes () — получает разрешение, которое можно использовать в полноэкранном режиме
- pygame.display.mode_ok () — Выбрать наиболее подходящую глубину цвета для режима отображения
- pygame.display.gl_get_attribute () — Получить значение атрибута текущего интерфейса отображения OpenGL
- pygame.display.gl_set_attribute () — Установить значение атрибута OpenGL для текущего режима отображения
- pygame.display.get_active () — возвращает True, когда текущий интерфейс дисплея отображается на экране
- pygame.display.iconify () — Свернуть отображаемый объект Surface
- pygame.display.toggle_fullscreen () — переключение между полноэкранным и оконным режимами
- pygame.display.set_gamma () — Изменяет гамма-рампу, отображаемую оборудованием
- pygame.display.set_gamma_ramp () — настраивает и изменяет гамма-рампу, отображаемую оборудованием
- pygame.display.set_icon () — Изменить значок окна отображения
- pygame.display.set_caption() — Set the current window caption
- pygame.display.get_caption() — Get the current window caption
- pygame.display.set_palette() — Set the display color palette for indexed displays
Этот модуль предоставляет различные функции для управления интерфейсом отображения Pygame (display). Pygame’s Surface Объект может отображаться в виде окна или в полноэкранном режиме. Когда вы создаете и отображаете обычный Surface После объекта изменения на объекте не будут немедленно отражены на видимом экране.Вы должны выбрать функцию переворота, чтобы отобразить измененный экран.
Отображаемое начало координат — это положение (x = 0, y = 0) и верхнего левого угла экрана. Ось координат увеличивается в правом нижнем углу.
На самом деле отображение Pygame можно инициализировать несколькими способами. По умолчанию дисплей действует как программный буфер кадра. Кроме того, вы можете использовать специальные модули, поддерживающие аппаратное ускорение и OpenGL. Они контролируются передачей параметра flags в pygame.display.set_mode ().
Pygame допускает только один интерфейс отображения в любое время. Новый интерфейс отображения, созданный с помощью pygame.display.set_mode (), автоматически заменит старый. Если вам нужно точно контролировать формат пикселей или разрешение экрана, используйте pygame.display.mode_ok (), pygame.display.list_modes () и pygame.display.Info () для запроса информации об интерфейсе дисплея.
однажды Surface Создается интерфейс отображения объекта, и функция этого модуля влияет только на текущий интерфейс отображения. Если модуль не инициализирован, Surface Объект также станет «нелегальным». Если установлен новый режим отображения, текущий Surface Объект автоматически переключится на новый интерфейс отображения.
Когда установлен новый режим отображения, несколько связанных событий будут помещены в очередь событий Pygame. Когда используется для закрытия программы, будет отправлено событие pygame.QUIT; когда интерфейс дисплея получает и теряет фокус, окно получит событие pygame.ACTIVEEVENT; если интерфейс дисплея установлен с флагом pygame.RESIZABLE, тогда, когда пользователь регулирует размер окна , Будет отправлено событие Pygame.VIDEORESIZE; аппаратный дисплей означает, что при получении события pygame.VIDEOEXPOSE часть окна, которую необходимо перерисовать, отображается непосредственно на экране.
В некоторых средах отображения есть возможность автоматически растягивать все окна. Когда эта опция активирована, автоматическое растягивание искажает внешний вид окна Pygame. В каталоге примеров Pygame есть демонстрационный код (prevent_display_stretching.py), который показывает, как отключить свойство автоматического растягивания отображения Pygame в системах Microsoft (системы выше Vista).
Описание функции
pygame.display.init()
Инициализируйте модуль дисплея.
init() -> None
Инициализировать модуль отображения Pygame. До инициализации модуль дисплея ничего не может делать. Но когда вы вызываете pygame.init () более высокого уровня, изменение автоматически вызывает pygame.display.init () для инициализации.
После инициализации Pygame автоматически выберет один из нескольких внутренних модулей отображения. Режим отображения определяется платформой и текущими полномочиями пользователя. Перед инициализацией модуля отображения можно использовать переменную среды SDL_VIDEODRIVER, чтобы установить, какой серверный модуль отображения будет использоваться. К системам с несколькими серверными модулями отображения относятся следующие:
Windows : windib, directx
Unix : x11, dga, fbcon, directfb, ggi, vgl, svgalib, aalib
На некоторых платформах вы можете встроить отображение Pygame в существующее окно. Если вы это сделаете, переменная среды SDL_WINDOWID должна быть установлена в строку, содержащую идентификатор окна или дескриптор. Когда отображение Pygame инициализировано, переменные среды будут проверены. Обратите внимание, что встраивание отображения в работающее окно может иметь много странных побочных эффектов.
Нет проблем с вызовом этой функции несколько раз, но эффекта нет.
pygame.display.quit()
Закройте модуль дисплея.
quit() -> None
Эта функция закроет весь дисплейный модуль. Это будет означать, что любой активный интерфейс дисплея будет закрыт. Эта функция также будет вызываться автоматически при выходе из основной программы.
Нет проблем с вызовом этой функции несколько раз, но эффекта нет.
pygame.display.get_init()
Если модуль дисплея был инициализирован, верните True.
get_init() -> bool
Если модуль дисплея был инициализирован, верните True.
pygame.display.set_mode()
Инициализируйте окно или экран для отображения.
set_mode(resolution=(0,0), flags=0, depth=0) -> Surface
Эта функция создастSurface Интерфейс отображения объекта. Переданные параметры используются для определения типа отображения. Окончательный созданный интерфейс дисплея будет максимально соответствовать текущей операционной системе.
Параметр разрешения — это кортеж из двух элементов, представляющий ширину и высоту. Параметр flags представляет собой набор дополнительных опций. Параметр глубины указывает используемую глубину цвета.
возвращение Surface Объект может быть как обычныйSurface Объект нарисован так, но происходящие изменения со временем отобразятся на экране.
Если параметр разрешения не передан или используется настройка по умолчанию (0, 0), а Pygame использует SDL1.2.10 или новее, созданный объект Surface будет иметь то же разрешение, что и текущий пользователь экрана. Если только одна из ширины или высоты установлена на 0, то объект Surface заменит ее шириной или высотой разрешения экрана. Если версия SDL ниже 1.2.10, будет создано исключение.
Вообще говоря, лучше всего не передавать параметр глубины. Потому что по умолчанию Pygame выберет лучшую и самую быструю глубину цвета в соответствии с текущей операционной системой. Если вашей игре действительно нужен особый цветовой формат, вы можете сделать это, управляя параметром глубины. Pygame потребуется больше времени для имитации нестандартной глубины цвета.
При использовании полноэкранного режима отображения иногда не удается полностью подобрать необходимое разрешение. В этом случае Pygame автоматически выберет наиболее подходящее разрешение для использования, и вернетSurface Объект останется в соответствии с требуемым разрешением.
Параметр flags определяет желаемый тип отображения. Вам предлагается несколько вариантов. Вы можете использовать несколько типов одновременно с помощью битовых операций (оператор вертикальной черты «|»). Если вы передадите параметр 0 или без флагов, по умолчанию будет использоваться окно программного драйвера. Вот несколько вариантов, предоставляемых параметром flags:
Параметры |
смысл |
pygame.FULLSCREEN | Создать полноэкранный дисплей |
pygame.DOUBLEBUF | 1. Режим двойной буферизации 2. Рекомендуется использовать с HWSURFACE или OPENGL. |
pygame.HWSURFACE | Аппаратное ускорение, доступно только для ПОЛНОЭКРАННОГО |
pygame.OPENGL | Создание отображения с визуализацией OPENGL |
pygame.RESIZABLE | Создать окно с изменяемым размером |
pygame.NOFRAME | Создать окно без границ и кнопок управления |
например:
# Создаем на экране окно размером 700 * 400
screen_width=700
screen_height=400
screen=pygame.display.set_mode([screen_width, screen_height])
pygame.display.get_surface()
Получить текущий отображаемыйПоверхностный объект.
get_surface() -> Surface
Вернуть текущий отображаемыйSurface Объект. Если режим отображения не установлен, возвращается значение None.
pygame.display.flip()
Обновите все для отображенияПоверхность объекта на экране.
flip() -> None
Эта функция обновит содержимое всего интерфейса дисплея. Если в вашем режиме отображения используются флаги pygame.HWSURFACE (аппаратное ускорение) и pygame.DOUBLEBUF (двойная буферизация), вы дождетесь вертикальной развертки и переключите интерфейс дисплея. Если вы используете другой тип режима отображения, он просто обновит содержимое всего интерфейса дисплея.
При использовании режима отображения pygame.OPENGL (с использованием рендеринга OPENGL) будет создана область переключения буфера gl.
Напоминание: вертикальный откат — это измерение времени, связанное с отображением видео. Оно представляет собой временной интервал между концом одного кадра и началом следующего кадра.
pygame.display.update()
Обновите часть отображения интерфейса программного обеспечения.
update(rectangle=None) -> None
update(rectangle_list) -> None
Эту функцию можно рассматривать как оптимизированную версию функции pygame.display.flip (), отображаемой в программном интерфейсе. Это позволяет обновлять часть экрана без необходимости обновления полностью. Если параметры не переданы, функция обновляет весь интерфейс так же, как pygame.display.flip ().
Вы можете передать в эту функцию одну или несколько прямоугольных областей. Одновременное прохождение нескольких прямоугольных областей более эффективно, чем многократное прохождение. Если передан пустой список или None, параметр будет проигнорирован.
Эта функция не может быть вызвана в режиме отображения pygame.OPENGL, в противном случае будет выдано исключение.
pygame.display.get_driver()
Получите имя серверной части дисплея Pygame.
get_driver() -> name
При инициализации Pygame выберет один из нескольких доступных бэкэндов отображения. Эта функция возвращает имя, используемое внутренне серверной частью дисплея. Может использоваться для предоставления некоторой информации об ускорении работы дисплея. Вы можете обратиться к переменной среды SDL_VIDEODRIVER в pygame.display.set_mode ().
pygame.display.Info()
Создайте информационные объекты об интерфейсе дисплея.
Info() -> VideoInfo
Создайте объект, содержащий описание некоторых свойств текущей графической среды. На некоторых платформах, если эта функция вызывается перед pygame.display.set_mode (), она может предоставить некоторую информацию о режиме отображения по умолчанию. Вы также можете вызвать эту функцию после настройки режима отображения, чтобы убедиться, что параметры отображения удовлетворительны.
Возвращенный объект VideoInfo содержит следующие свойства:
Атрибуты |
смысл |
hw | Если это True, это означает, что аппаратное ускорение включено. |
wm | Если это True, это означает отображение оконного режима. |
video_mem | Указывает, сколько мегабайт (МБ) в видеопамяти, 0 означает, что не ясно |
bitsize | Указывает, сколько бит хранится в каждом пикселе |
bytesize | Указывает, сколько байтов хранится в каждом пикселе |
masks | 4 значения используются для упаковки значения RGBA пикселя |
shifts | 4 значения используются для упаковки значения RGBA пикселя |
losses | 4 значения используются для упаковки значения RGBA пикселя |
blit_hw | Если это True, это означает, что аппаратныйSurface Рисунок объекта |
blit_hw_CC | Если это True, это означает, что аппаратныйSurface Цветовой рисунок объекта |
blit_hw_A | Если это True, это означает, что аппаратныйSurface Рисовать объект пиксель альфа |
blit_sw | Если это True, это означает, что ускорение осуществляется программным способом.Surface Рисунок объекта |
blit_sw_CC | Если это True, это означает, что ускорение осуществляется программным способом.Surface Цветовой рисунок объекта |
blit_sw_A | Если это правда, это означает, что программныйSurface Альфа-рисунок пикселя объекта |
current_w, current_h | 1. Указывает ширину и высоту текущего режима отображения (если вызывается перед display.set_mode (), это означает ширину и высоту текущего рабочего стола) 2. current_w, current_h поддерживаются после Pygame 1.8.0 и SDL 1.2.10. 3. -1 означает ошибку или версия SDL слишком старая. |
pygame.display.get_wm_info()
Получить информацию о текущей оконной системе.
get_wm_info() -> dict
Создайте словарь, заполненный данными операционной системы. Некоторые операционные системы могут не заполнять информацию и возвращать пустой словарь. Большинство платформ вернут ключ «окна», соответствующее значение — это системный идентификатор текущего интерфейса дисплея.
Pygame 1.7.1 добавлен недавно.
pygame.display.list_modes()
Получите разрешение, которое можно использовать в полноэкранном режиме.
list_modes(depth=0, flags=pygame.FULLSCREEN) -> list
Эта функция возвращает список, содержащий все разрешения, поддерживаемые указанной глубиной цвета. Если режим отображения не является полноэкранным, возвращается пустой список. Если он возвращает -1, поддерживается любое разрешение (аналогично оконному режиму). Возвращенный список отсортирован от наибольшего к наименьшему.
Если глубина цвета равна 0, SDL выберет текущую / наиболее подходящую глубину цвета для отображения. Значение по умолчанию для параметра flags — pygame.FULLSCREEN, но вам может потребоваться добавить дополнительные флаги полноэкранного режима.
pygame.display.mode_ok()
Выберите наиболее подходящую глубину цвета для режима отображения.
mode_ok(size, flags=0, depth=0) -> depth
Эта функция использует те же параметры, что и функция pygame.display.set_mode (). Обычно используется, чтобы определить, доступен ли режим отображения. Если режим отображения не может быть установлен, возвращается 0. В нормальных условиях возвращается требуемая для дисплея глубина пикселей.
Обычно вас не волнует параметр глубины, если только некоторые платформы не поддерживают несколько глубин отображения, он подскажет, какая глубина цвета более подходящая.
Наиболее полезными параметрами флагов являются pygame.HWSURFACE, pygame.DOUBLEBUF и pygame.FULLSCREEN. Если эти флаги не поддерживаются, функция возвращает 0.
pygame.display.gl_get_attribute()
Получить значение атрибута текущего интерфейса дисплея OpenGL.
gl_get_attribute(flag) -> value
После вызова функции pygame.display.set_mode () с установленным флагом pygame.OPENGL рекомендуется проверять значения атрибутов OpenGL. Обратитесь к pygame.display.gl_set_attribute () для получения списка допустимых флагов.
pygame.display.gl_set_attribute()
Установите значение атрибута OpenGL для текущего режима отображения.
gl_set_attribute(flag, value) -> None
При вызове функции pygame.display.set_mode () с установленным флагом pygame.OPENGL Pygame автоматически устанавливает некоторые значения атрибутов OpenGL, такие как цвет и двойной буфер. OpenGL фактически предоставляет вам некоторые другие значения атрибутов. Передайте имя атрибута в параметре флага и установите его значение в параметре значения. Эта функция должна быть установлена перед pygame.display.set_mode ().
Эти флаги OPENGL:
GL_ALPHA_SIZE, GL_DEPTH_SIZE, GL_STENCIL_SIZE, GL_ACCUM_RED_SIZE,
GL_ACCUM_GREEN_SIZE, GL_ACCUM_BLUE_SIZE, GL_ACCUM_ALPHA_SIZE,
GL_MULTISAMPLEBUFFERS, GL_MULTISAMPLESAMPLES, GL_STEREO
pygame.display.get_active()
Верните True, когда на экране отображается текущий интерфейс дисплея.
get_active() -> bool
После вызова функции pygame.display.set_mode () на экране отобразится объект Surface. Большинство окон поддерживают скрытие, если отображаетсяSurface Объект скрыт и свернут, тогда функция вернет False.
pygame.display.iconify()
Сверните отображаемоеSurface Объект.
iconify() -> bool
Сверните или скройте отображаемый объект Surface. Не все операционные системы поддерживают интерфейс минимизированного дисплея. Если функция успешно вызвана, она возвращает True.
Когда интерфейс дисплея свернут, pygame.display.get_active () возвращает False. Очередь событий получит событие ACTIVEEVENT.
pygame.display.toggle_fullscreen()
Переключение между полноэкранным и оконным режимами.
toggle_fullscreen() -> bool
Переключение между полноэкранным и оконным режимами. Эта функция работает только с драйвером дисплея unix x11. В большинстве случаев рекомендуется вызвать pygame.display.set_mode (), чтобы создать новый режим отображения для переключения.
pygame.display.set_gamma()
Измените гамма-рампу, отображаемую оборудованием.
set_gamma(red, green=None, blue=None) -> bool
Установите значения гаммы красного, зеленого и синего, отображаемые драйвером оборудования. Если зеленый и синий параметры не переданы, они будут равны значению красного. Не все операционные системы и оборудование поддерживают гамма-изменение. Если функция изменена успешно, она возвращает True.
Значение гаммы 1.0 создает линейную таблицу цветов, более низкое значение затемняет экран, а более высокое значение делает экран переменной.
pygame.display.set_gamma_ramp()
Настроить и изменить гамма-рампу, отображаемую оборудованием
set_gamma_ramp(red, green, blue) -> bool
Используйте настраиваемую таблицу, чтобы установить красную, зеленую и синюю гамма-кривые, отображаемые драйвером оборудования. Каждый параметр должен быть списком 256-битных целых чисел. Каждое целое число должно быть от 0 до 0xffff. Не все операционные системы и оборудование поддерживают гамма-изменение. Если функция изменена успешно, она возвращает True.
pygame.display.set_icon()
Измените значок окна дисплея.
set_icon(Surface) -> None
Установите значок при открытии окна дисплея. Все операционные системы по умолчанию используют простой ЛОГОТИП Pygame в виде значка.
Вы можете пройти в любойSurface Объект используется как значок, но для большинства операционных систем требуется, чтобы размер значка был 32 * 32. Значок может установить прозрачность цвета.
Некоторые операционные системы не позволяют изменять значок окна на дисплее. Для этого типа операционной системы этой функции необходимо создать и установить значок перед вызовом pygame.display.set_mode ().
pygame.display.set_caption()
Установите строку заголовка текущего окна.
set_caption(title, icontitle=None) -> None
Если в окне дисплея есть строка заголовка, эта функция изменит текст строки заголовка окна. Некоторые операционные системы поддерживают переключение строки заголовка, когда окно свернуто, путем установки параметра icontitle.
pygame.display.get_caption()
Получить строку заголовка текущего окна.
get_caption() -> (title, icontitle)
Вернуть строку заголовка текущего окна и свернуть строку заголовка, обычно эти два значения совпадают.
pygame.display.set_palette()
Установите палитру интерфейса дисплея.
set_palette(palette=None) -> None
Эта функция изменяет 8-битную палитру интерфейса дисплея. Это не изменит фактическую цветовую палитру объекта Surface и используется только для отображения объекта Surface. Если параметры не переданы, будет восстановлена системная палитра по умолчанию. Палитра представляет собой последовательность троек RGB.
Уведомления
- Начало
- » Python для новичков
- » video system not initialized
#1 Апрель 13, 2016 16:17:47
video system not initialized
import pygame
WHITE = (255, 255, 255)
pygame.init()
(6,0) <– выдает, что это означает интересно знать бы -)
size = (700, 500)
screen = pygame.display.set_mode(size)
pygame.display.set_caption(“My Game”)
done = False
clock = pygame.time.Clock()
while not done:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
screen.fill(WHITE)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Здравствуйте! Пытаюсь освоить Питон. (знаний программирования вобще нет) После нажатия ‘Enter’, открывшееся окно успевает поменять фон на белый, и закрывается с ошибкой: video system not initialized (видеосистема не инициализируется). Что это может означать, проблема с дравами на видеокарту?
Офлайн
- Пожаловаться
#2 Апрель 13, 2016 16:23:26
video system not initialized
Pygame нет, но попробуй вот так код поправить :
import pygame WHITE = (255, 255, 255) pygame.init() size = (700, 500) screen = pygame.display.set_mode(size) pygame.display.set_caption('My Game') screen.fill(WHITE) pygame.display.flip() clock = pygame.time.Clock() clock.tick(60) done = False while not done: for event in pygame.event.get(): if event.type == pygame.QUIT: done = True pygame.quit()
Хотя вроде вспомнил, что я сейчас полную чушь сказал. Это скорее всего не поможет.
Отредактировано Lestoroer (Апрель 13, 2016 16:30:15)
Офлайн
- Пожаловаться
#3 Апрель 13, 2016 16:26:20
video system not initialized
Traceback (most recent call last):
File “<pyshell#23>”, line 2, in <module>
for event in pygame.event.get():
pygame.error: video system not initialized
не знаю как отступы сделать.. Полная ошибка выглядит так..
Отредактировано kapaky (Апрель 13, 2016 16:27:20)
Офлайн
- Пожаловаться
#4 Апрель 13, 2016 16:30:43
video system not initialized
kapaky
Traceback (most recent call last): File “<pyshell#23>”, line 2, in <module> for event in pygame.event.get():pygame.error: video system not initializedне знаю как отступы сделать.. Полная ошибка выглядит так..
Снова попробуй скопировать, я отредактировал
Офлайн
- Пожаловаться
#5 Апрель 13, 2016 16:43:41
video system not initialized
pygame.display.set_caption(‘My Game’)
screen.fill(WHITE)
если вобще убрать эти строчки, та же ошибка
Офлайн
- Пожаловаться
#6 Апрель 13, 2016 17:55:11
video system not initialized
все перепробовал, даже от имени администратора запускал. Та же ошибка.
мне кажется что, когда я скачивал “pygame” он был не полный. Если такое бывает.?
Офлайн
- Пожаловаться
#7 Апрель 16, 2016 10:26:50
video system not initialized
может после, когда сам во всем разберусь, то объясню, почему именно так. Но пока работает следующая схема.
>>> import pygame,sys
>>> pygame.init()
>>> from pygame.locals import * <—- Эта штука важна (1)
>>> size= (400,600) <—- Скобки квадратные только
>>> dis=pygame.display.set_mode(size)
>>> while True:
for event in pygame.event.get():
if event.type == QUIT: <—– (1) влияет на выход. Без нее выдает, что переменной ‘QUIT’ нет
pygame.quit()
sys.exit()
pygame.display.update()
Теперь все работает, закрывается, когда пользователь нажмет закрыть (через крестик как обычно)
Отредактировано kapaky (Апрель 16, 2016 10:28:52)
Офлайн
- Пожаловаться
#8 Апрель 6, 2017 18:01:27
video system not initialized
kapaky
Форум сайта python.su
Получилось разобраться?
Офлайн
- Пожаловаться
- Начало
- » Python для новичков
- » video system not initialized