Text Python:如何在画布中添加文本?

Text Python:如何在画布中添加文本?,text,python-3.x,tkinter,Text,Python 3.x,Tkinter,我曾多次尝试将文本添加到画布中,但只需单击按钮或在画布外部添加文本。或者它会在一个单独的框中弹出。使用下面的代码- def text(): canvas.create_text(100,10,fill="darkblue",font="Times 20 italic bold",text="Click the bubbles that are multiples of two.") canvas.update 它从来都不起作用。因此,我的问题是如何在画布中添加文本以开始游戏?首

我曾多次尝试将文本添加到画布中,但只需单击按钮或在画布外部添加文本。或者它会在一个单独的框中弹出。使用下面的代码-

def text():
    canvas.create_text(100,10,fill="darkblue",font="Times 20 italic bold",text="Click the bubbles that are multiples of two.")
    canvas.update

它从来都不起作用。因此,我的问题是如何在画布中添加文本以开始游戏?

首先,第一段代码不起作用,因为您没有名为
canvas
的变量。但是,您有一个名为
self.canvas
。当我在代码的第一位使用
self.canvas
并将其添加到工作程序中时,文本显示得很好

另外,在第一段代码中,您可以执行
canvas.update
。这绝对没有效果,因为后面没有括号。如果你修好了,它会工作的,但它真的没用。输入事件循环后,文本将立即显示

您只需在创建画布后添加一行即可:

self.canvas = Canvas(root, width=800, height=650, bg = '#afeeee')
self.canvas.create_text(100,10,fill="darkblue",font="Times 20 italic bold",
                        text="Click the bubbles that are multiples of two.")
  • 使用
    fg
    代替
    fill
    参数
  • 您的
    font
    值无效。阅读更多关于它的信息
  • 记住画布后面的括号。更新

  • 谢谢你…很抱歉浪费了你的时间。我完全忘了将canvas更改为self.canvas。板条箱文本采用填充而不是fg选项,字体值可以在画布中作为字符串提供