如何在Vpython中显示分数?

0 投票
2 回答
1245 浏览
提问于 2025-04-17 18:08

我的代码

from visual import *

class Punktecounter():
    def __init__(self,position=(0,0), score=0):
        self.counter = label(pos=position, color=color.red, text=str(score))
        self.score = score
    def scoring(self):
        self.score = self.score+1
        print (self.score)

p = Punktecounter()
while True:
    p.scoring()
    rate(1)

打印的部分运行得很好。
但是标签上没有显示分数。怎么解决这个问题呢?

2 个回答

1

应该像这样

def scoring(self):
    self.score=self.score+1
    self.counter.text = str(self.score)
    print (self.score)
3

这个标签不会自己更新,你需要手动去更新它:

def scoring(self):
    self.score=self.score+1
    self.label.text = str(self.score)
    print (self.score)

撰写回答