Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python Tkinter –ルートウィンドウを基準にしてtopLevel()ウィジェットを配置する方法は?


Tkinterでは、トップレベル ウィジェットは、ポップアップモーダルウィンドウを作成するために使用されます。 トップレベルによって作成されたポップアップウィンドウ windowは、tkinterアプリケーションのデフォルトウィンドウと同様に機能します。 テキストウィジェット、ボタンウィジェット、キャンバスウィジェット、フレームなどのウィジェットを含めることができます など

トップレベルのサイズと位置 ウィンドウは、画面全体で柔軟にすることで決定できます。 トップレベル ウィンドウの場合、すべてのウィジェットは常に他のウィンドウの上に配置されます。

root.winfo_x()を使用できます およびroot.winfo_y() ルートウィンドウの位置を取得します。次に、ジオメトリを使用できます トップレベルを配置する方法 ルートウィンドウを基準にしたウィジェット。 トップレベルを作成する ルートウィンドウを基準にしたウィジェットは、2つのウィンドウのオーバーラップを防ぎ、それらを分離します。それがどのように機能するかを示すために例を見てみましょう。

# Import the required libraries
from tkinter import *

# Create an instance of tkinter frame or window
win = Tk()

# Set the size of the window
win.geometry("700x300")
win.title("Root Window")

# Create a toplevel window
top = Toplevel(win)
top.geometry("400x200")

# Create a Label in the toplevel widget
Label(top, text= "This is a Toplevel window", font="Calibri, 12").pack()
x = win.winfo_x()
y = win.winfo_y()
top.geometry("+%d+%d" %(x+200,y+200))

# Keep the toplevel window in front of the root window
top.wm_transient(win)

top.mainloop()

出力

上記のコードを実行すると、メインウィンドウとは別にトップレベルウィンドウが表示されます。

Python Tkinter –ルートウィンドウを基準にしてtopLevel()ウィジェットを配置する方法は?


  1. PythonTkinterを使用してMessageBoxの位置を変更する方法

    tkinterを使用してダイアログボックスを作成するとします。ダイアログボックスを作成するには、いくつかの関数を含むMessageBoxライブラリを使用して、ダイアログタイプをすばやく作成できます。 作成されたダイアログボックスの位置を調整するには、基本的に現在のボックスを優先し、他のすべてのプロセスをバックエンドに保持する「トップレベル」プロパティを使用できます。 タイトル、メッセージ、詳細など、その他の機能が含まれています。 MessageBoxウィジェットの位置を変更するには、ジオメトリを使用します メソッド。 例 #import the tkinter library from

  2. Python Tkinterのルートウィンドウを削除するにはどうすればよいですか?

    Tkinterアプリケーションのテスト中に、Tkinterdefaultウィンドウまたはフレームを非表示にする必要がある場合があります。 Tkinterウィンドウを非表示にするか、破棄するかの2つの一般的な方法があります。 mainloop() 外部イベントによって閉じられなくなるまで、Tkinterウィンドウを実行し続けます。ウィンドウを破棄するには、 destroy()を使用できます 呼び出し可能なメソッド。 ただし、Tkinterウィンドウを非表示にするには、通常、ルートウィンドウまたはメインウィンドウで呼び出すことができる「withdraw」メソッドを使用します。 この例では、