-2

通常、この形式はすべてのプログラムで機能しますが、何らかの理由で現在機能していません

from Tkinter import *

class gui1(Frame):
    def __init__(self, master):
        Frame.__init__(self, master)
        self.widget_display()

    def widget_display(self):
        a1 = Label(self, text = 'yeah')
        a1.place(x = 0 , y =10)

root = Tk()
app = gui1(root)
app.pack()
root.geometry('800x600')
root.mainloop()

なぜ機能しないのか知りたいです。

4

1 に答える 1

0

フレームにサイズを指定しておらず、フレームが大きくなるような方法でジオメトリ マネージャーを使用していないため、デフォルトでは 1x1 になります。コードは機能しています。ラベルが単一のピクセル内にあるだけです。これが place が推奨されない理由の 1 つです。すべてのサイズと配置について明確にする必要があります。

フレームに明示的な幅と高さを指定するか、ウィンドウ全体を埋めるようにフレームをパックすると、ラベルが表示されます。

于 2013-05-07T02:14:28.030 に答える