2016-08-24 2 views
0

このPython-tkinterプログラムは、パックジオメトリマネージャを使用して、ルートウィンドウにテキストウィジェットと「終了」ボタンを配置します。テキストウィジェットはボタンの上にあります。ウィジェットをカバーしないウィンドウのサイズ変更

import tkinter as tk 
root = tk.Tk() 
txt = tk.Text(root, height=5, width=25, bg='lightblue') 
txt.pack(fill=tk.BOTH,expand=True) 
txt.insert('1.0', 'this is a Text widget') 
tk.Button(root, text='quit', command=quit).pack() 
root.mainloop() 

下の境界線を上にドラッグしてルートウィンドウのサイズを変更すると、終了ボタンが失われます。ルートウィンドウの境界線の下に消えます。しかし、テキストのウィジェットを縮小させながら、ウィンドウの境界線に沿って上に移動するquitボタンを取得しようとしています。私は両方のウィジェットでpack()と "height"で "fill"と "expand"を使って成功しました。

ウィンドウを小さくドラッグしているときに終了ボタンを表示したままにする方法はありますか?

(研究しながら、私はその「粘着性」細胞とグリッドの形状が簡単にこのタスクを達成できることに気づいた。しかし、私はまだパックジオメトリと同じことを行うための任意の簡単な方法があるかどうか知りたいんだ。)

答えて

0

テキストウィジェットをパックする前に終了ボタンをパックします。ウィンドウの内容が小さすぎると、ウィジェットが圧縮されなくなったときに逆順にウィジェットを縮小し始め、ウィジェットをクリップし始めます。

ウィンドウ内で最大のウィジェットであるテキストウィジェットは、クリッピングが始まる前に大きく縮小することができます。

+0

それは私が望むことができるほどシンプルでわかりやすいものであり、私が望むのとまったく同じように動作します。 後で来る人のために:私は今、私はテキストをパックする前にボタンを梱包していますが、私はまだボタンをテキストの後に表示したい、 "pack(side = tk.BOTTOM)"を使用する必要がありますボタンを梱包するため。 – yoopits

関連する問題