6

次のような単純なコードがあるとします。

from Tkinter import *
root = Tk()
app = Toplevel(root)
app.mainloop()

Toplevel(root)これにより、ウィンドウとウィンドウの 2 つのウィンドウが開きTk()ます。

Tk()ウィンドウ ( root) が開かないようにすることはできますか? もしそうなら、どのように?私はトップレベルだけが欲しいです。複数のウィンドウを開くプログラムを作成しているため、これを実現したいと考えていToplevelますroot

ありがとう!

4

1 に答える 1

12

このwithdraw()メソッドは、画面からウィンドウを削除します。
このiconify()メソッドは、ウィンドウを最小化するか、アイコンに変えます。
このdeiconify()メソッドは、ウィンドウを再描画したり、アクティブにしたりします。

を選択した場合はwithdraw()、テストの前にプログラムを終了する新しい方法を検討したことを確認してください。
例えば

from Tkinter import * # tkinter in Python 3

root = Tk()
root.withdraw()

top = Toplevel(root)
top.protocol("WM_DELETE_WINDOW", root.destroy)

but = Button(top, text='deiconify')
but['command'] = root.deiconify
but.pack()

root.mainloop()

このメソッドを使用して、トップレベル ウィンドウの閉じるボタンが押さprotocol()れたときに呼び出される関数を登録できます。この場合、終了するために使用できます。
destroy()

于 2013-02-23T22:35:28.380 に答える