我的問題是菜單,它顯示「按空間播放!」 但是當我按下它,它不起作用! 我認爲它與同時出現問題環路 我不能正確顯示代碼,所以這裏是我的代碼的鏈接 https://github.com/Donutoftime44/nheon-shooter 我試圖把如果我的代碼之類的語句雖然循環不起作用
while not done:
if menu:
...
elif not menu:
...
但它仍然一點兒也不工作! 有人可以幫我嗎?
我的問題是菜單,它顯示「按空間播放!」 但是當我按下它,它不起作用! 我認爲它與同時出現問題環路 我不能正確顯示代碼,所以這裏是我的代碼的鏈接 https://github.com/Donutoftime44/nheon-shooter 我試圖把如果我的代碼之類的語句雖然循環不起作用
while not done:
if menu:
...
elif not menu:
...
但它仍然一點兒也不工作! 有人可以幫我嗎?
假設你正在談論這部分代碼:
while menu:
for event in pg.event.get():
if event.type == QUIT:
pg.quit()
sys.exit()
if event.type == KEYUP:
if event.key == K_SPACE:
print "playing"
done = True
windowdisplay.fill(colors["gray"])
windowdisplay.blit(label, ((maxx/2) - 100, maxy - 25))
pg.display.update()
好像你希望當用戶按下空格結束循環。在這種情況下,你需要:
if event.key == K_SPACE:
menu = False
設置done
等於True
什麼都不做,因爲done
沒有其他地方出現在你的代碼。
你有
while menu:
for event in pg.event.get():
if event.type == QUIT:
pg.quit()
sys.exit()
if event.type == KEYUP:
if event.key == K_SPACE:
print "playing"
done = True
因爲你永遠不會改變菜單的循環永遠不會休息,我相信你可能要在if event.key == K_SPACE:
不能正確顯示的代碼添加
menu = False
,但你必須格式正確的代碼在你的文章? – user2357112鏈接中的代碼太多了。將它分解爲[SSCCE](http://sscce.org/),否則任何人都不會通讀所有內容來幫助你。 – user2357112
世界上有許多例子,while循環可以工作。我可能會建議一個對你的實際問題更具描述性的標題?這樣,知道如何幫助的人更有可能找到你的問題。 – SethMMorton