次のコードでは、サイズ変更可能フラグがどのように機能するかをテストするために、非常に単純なウィンドウを設定しています。XPラップトップでこの正確なコードを実行しても、エラーは発生しません。画面と何らかの方法でサイズを変更すると、それに応じてすべての図面が更新され、問題なく閉じることができます。
ただし、これを Windows 7 で実行すると、ウィンドウのサイズを変更しようとすると、次のエラーが発生します。
*
このアプリケーションは、異常な方法で終了するようランタイムに要求しました。詳細については、アプリケーションのサポート チームにお問い合わせください。
*
pygame.init()
screenSize =(640,480)
screen = pygame.display.set_mode(screenSize,RESIZABLE,32)
pygame.display.set_caption('Window Test')
mlogo = pygame.image.load(logo).convert()
screen.fill((255,255,255))
def get_screen_size():
return (screen.get_size()[0]/2 - 25,
screen.get_size()[1]/2 - 25, 50,50)
while True:
for event in pygame.event.get():
if event.type == QUIT:
sys.exit()
if event.type == MOUSEBUTTONDOWN:
print event.button
if event.type == VIDEORESIZE:
screenSize = event.size
screen = pygame.display.set_mode(screenSize,
RESIZABLE, 32)
pygame.display.set_caption('Window Test')
screen.fill((255,255,255))
pygame.draw.rect(screen, (0,0,0), get_screen_size())
## screen.blit(mlogo, im_center)s
pygame.draw.rect(screen, (0,0,0), get_screen_size())
stime = time.time()
pygame.display.update()
あるOSでは実行され、他のOSでは実行されない理由はありますか? サイズ変更可能フラグを削除すると、両方のマシンですべてが正常に実行されることに注意してください。