简体   繁体   English

tkinter.font模块对象不可调用

[英]tkinter.font module object not callable

I'm attempting to make a simple platformer game, however, I can't show the "Game Over" message because tkinder, and more specifically, tkfont, or tkinder.font, is a module, and cannot be called. 我试图制作一个简单的平台游戏,但是,由于tkinder(更具体地说,tkfont或tkinder.font)是一个模块,因此无法调用,因此无法显示“ Game Over”消息。 Code here. 在这里编码。 The full traceback is: 完整的回溯是:

Traceback (most recent call last):
  File "C:\Users\iD Student\Desktop\Connor M\Endless platformer.py", line 
31, in <module>
    helv36 = tkinter.font(family="Helvetica",size=36,weight="bold")
TypeError: 'module' object is not callable

tkinter.font.Font throws this traceback: tkinter.font.Font引发此回溯:

Traceback (most recent call last):
  File "C:\Users\iD Student\Desktop\Connor M\Endless platformer.py", line 
31, in <module>
    helv36 = tkinter.font.Font(family="Helvetica",size=36,weight="bold")
  File "C:\Python35\lib\tkinter\font.py", line 93, in __init__
    tk.call("font", "create", self.name, *font)
AttributeError: 'NoneType' object has no attribute 'call'

which I assume to be an error in tkinter itself. 我认为这是tkinter本身的错误。 Relevant code: 相关代码:

import tkinter
from tkinter.font import *

helv36 = tkinter.font.Font(family="Helvetica",size=36,weight="bold")

def draw_text(display_string, font, surface, x_pos, y_pos):
    text_display = font.font(display_string, 1, (0, 0, 0))
    surface.blit(text_display, (x_pos, y_pos))

        #Ends the game if the player dies
        if y >640:
            endgame = True
        if endgame:
            draw_text("GAME OVER", helv36, screen, 50, 50)

您必须先创建根窗口,然后才能创建字体。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM