Форум программистов, компьютерный форум, киберфорум
Python: PyGame
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
 Аватар для jkrnd
179 / 69 / 13
Регистрация: 22.12.2015
Сообщений: 2,648

Окно pygame zero не выводится по центру экрана

05.11.2021, 13:36. Показов 4223. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравствуйте.
Python
1
2
3
4
import pgzrun
WIDTH = 800
HEIGHT = 500
pgzrun.go()
Окно выводится в позиции, смещённой от центра экрана вправо и вниз. Как позиционировать окно по центру экрана?

Не по теме:

Думаю попал в тему, ведь pygame zero это упрощённый вариант pygame.

Миниатюры
Окно pygame zero не выводится по центру экрана  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.11.2021, 13:36
Ответы с готовыми решениями:

Окно программы по центру экрана
Может кто дать? Найти не могу. Без пред скомпилированных заголовков и прочей ерунды...

Как установить диалоговое окно OpenFileDialog по центру экрана
Здравствуйте. В контейнере Panel1 установлен PictureBox1. При открытии диалогового окна «Открыть» оно устанавливается не посредине. ...

Пользователем вводится слово произвольной длины. Слово выводится по центру экрана с обратным порядком букв раз
Пользователем вводится слово произвольной длины. Слово выводится по центру экрана с обратным порядком букв разного цвета, после нажатия на...

5
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33404 / 21514 / 8236
Регистрация: 22.10.2011
Сообщений: 36,914
Записей в блоге: 12
05.11.2021, 17:50
Говорят, что работает вот так:

Python
1
2
3
4
5
6
7
8
import pgzrun
import os
 
WIDTH  = 800
HEIGHT = 600
 
os.environ['SDL_VIDEO_CENTERED'] = '1'
pgzrun.go()
1
 Аватар для jkrnd
179 / 69 / 13
Регистрация: 22.12.2015
Сообщений: 2,648
05.11.2021, 18:07  [ТС]
volvo, Здравствуйте!
Я так пробовал = результат тот же.
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
05.11.2021, 18:22
Лучший ответ Сообщение было отмечено jkrnd как решение

Решение

Цитата Сообщение от volvo Посмотреть сообщение
работает вот так
лично у меня - не работает. косяк разработчика походу, в pygame - работает
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
import pygame
import os
#os.environ['SDL_VIDEO_CENTERED'] = '1'
XPOS,YPOS = 100,100
os.environ['SDL_VIDEO_WINDOW_POS'] ="%d,%d" % (XPOS,YPOS)
pygame.display.init()
pygame.display.set_mode((600,400))
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            exit()
    pygame.display.update()
Добавлено через 5 минут
сработал такой костыль
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
import pygame
import os
#os.environ['SDL_VIDEO_CENTERED'] = '1'
XPOS,YPOS = 300,100
os.environ['SDL_VIDEO_WINDOW_POS'] ="%d,%d" % (XPOS,YPOS)
pygame.display.init()
 
import pgzrun
WIDTH  = 800
HEIGHT = 600
def draw():
    screen.fill((255,0,0))
pgzrun.go()
1
 Аватар для jkrnd
179 / 69 / 13
Регистрация: 22.12.2015
Сообщений: 2,648
05.11.2021, 18:59  [ТС]
Цитата Сообщение от vic5710 Посмотреть сообщение
косяк разработчика
косяк pgzrun похоже

Добавлено через 27 минут
Чтобы отцентровать окно по дисплею вoт чего пришлось наворочать:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import pygame
import os
# Получим размеры дисплея
pygame.init()
width, height = pygame.display.Info().current_w, pygame.display.Info().current_h
# os.environ['SDL_VIDEO_CENTERED'] = '1' # Это здесь не сработает
 
print(width, height)
w, h = 800, 500          # Размеры окна формы
# позиция по X, Y без учёта рамки и заголовка
os.environ['SDL_VIDEO_WINDOW_POS'] = "%d,%d" % (width//2 - w//2, height//2 - h//2)
 
import pgzrun
 
WIDTH = w
HEIGHT = h
 
def draw():
    screen.fill((255, 0, 0))
pgzrun.go()
0
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
05.11.2021, 19:14
косяк потому что если перенести
Python
1
2
3
import pygame
import os
import pgzrun
не сработает, т.е. в процессе импорта данные pygame нарушаются
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.11.2021, 19:14
Помогаю со студенческими работами здесь

Как выводить Application.MessageBox по-центру приложения, а не по-центру экрана
сабж. на stackoverflow нашел вариант, как показывать это сообщение по центру приложения для Delphi. Там это делается через конструкцию...

Pygame и разрешение экрана
Доброго времени суток. У меня созрел вопрос: имеется ноутбук с разрешением экрана 1920 х 1080. Когда я создаю окно оно оказывается...

Библиотека pygame, зависает окно
Всем привет, начала осваивать питон и библиотеку pygame, но вот какая проблема при открытии просто зависает, оно открывается, но...

Неправильно работает окно Pygame
Написал код, который открывает окно Pygame синего цвета. Вот код: import sys import pygame def run_game(): ...

Постоянное перемещение персонажа из одного угла экрана в другой (pygame)
import pygame window=pygame.display.set_mode((400,400)) pygame.display.set_caption('hello py game') screen=pygame.Surface((400,400)) ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru