Pygame, нарисуйте линию в окнах - PullRequest
0 голосов
/ 25 мая 2018

Я хочу нарисовать линию в Python, но когда я запускаю приведенный ниже код, эта линия никогда не появляется.На самом деле мне нужно сделать поле с разделами 4х4, но давайте начнем со строки.Мой код:

import sys, pygame
from pygame.locals import*

width=1000
height=500
Color_screen=(49,150,100)
Color_line=(255,0,0)

def main():
    screen=pygame.display.set_mode((width,height))
    screen.fill(Color_screen)
    pygame.display.flip()
    pygame.draw.line(screen,Color_line,(60,80),(130,100))
    while True:
        for events in pygame.event.get():
            if events.type == QUIT:

                sys.exit(0)
main()

Что не так?

Ответы [ 2 ]

0 голосов
/ 20 мая 2019

Сделайте pygame.display.flip () после того, как вы рисуете свою линию, вы делаете это:

screen.fill(color)
pygame.display.flip()
pygame.draw.line(...)

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

screen.fill(color)
pygame.draw.line(...)
pygame.display.flip()
0 голосов
/ 26 мая 2018

Вы должны обновить отображение вашего компьютера с помощью pygame.display.flip после того, как вы проведете линию.

pygame.draw.line(screen, Color_line, (60, 80), (130, 100))
pygame.display.flip()

Обычно это делается в нижней части цикла while один раз за кадр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...