我正在尝试在pygame中创建一个可调整大小的窗口。但是,它的大小一直在随机且错误地调整。
我有两个文件,这是运行主循环的文件:
import eaterConstants
Screen = eaterConstants.Screen([400,400])
while True:
Screen.getGlobalInput()
这是第一个文件中引用的相关类:
class Screen():
def __init__(self,size):
self.screen = pygame.display.set_mode(size,pygame.RESIZABLE|pygame.DOUBLEBUF)
self.updated = False
def getGlobalInput(self):
for event in pygame.event.get():
if event.type == VIDEORESIZE:
self.resize(event)
if event.type == QUIT:
pygame.quit()
sys.exit()
self.update()
def resize(self,event):
self.screen = pygame.display.set_mode(event.size,pygame.RESIZABLE|pygame.DOUBLEBUF)
self.updated = False
def update(self):
if self.updated == False:
pygame.display.flip()
self.updated = True
一般来说,这是问题所在: {{3}}
预期结果是计算机上可能存在的任何其他窗口(例如,尝试调整Web浏览器的大小)
我在Linux 16.04上。我不知道这是否相关。
编辑:事实证明,在event.size上使用(event.w,event.h)不起作用。它仍然具有上述发布的抖动错误。
感谢您的帮助!