Tkinter帆布窗口不起作用?

时间:2017-04-25 07:12:58

标签: python tkinter tkinter-canvas

我正在进行基于文本的冒险,将游戏文本的标签打印到屏幕上。我需要使窗口可滚动,所以我试图实现一个包含框架的画布,其中包含标签。 出于某种原因,当我这样做时:

display = Tk()
display.geometry('1000x800')

canvas = Canvas(display)
frame = Frame(canvas)
canvas.pack()
frame.pack()

标签打包正确,但显然无法滚动。 但是当我这样做时(在画布中创建一个框架窗口):

canvas = Canvas(display)
frame = Frame(canvas, width=1000, height=700)
canvas.pack()
canvas.create_window((0,0), window=frame, anchor='nw')

第一个标签不适合框架,第二个标签打印后它们都消失了吗?

在整个主游戏循环中调用此功能时会打印游戏文本标签:

def output(text):
    l = Label(frame,text=text,justify=LEFT,font=font)
    l.pack()
    display.update()

我一直在摆弄容器尺寸和一些pack()属性,但似乎没有什么工作。窗口的尺寸似乎没有根据框架的变化而改变。 我应该可以添加一个滚动条,如果我可以正确绘制它们。

提前致谢!

0 个答案:

没有答案