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

Tkinterの新しいToplevel()ウィンドウにウィンドウのフォーカスを維持するにはどうすればよいですか?


Tkinterトップレベル クラスにはトップレベルが含まれます メインウィンドウ以外の子ウィンドウであるウィンドウ。トップレベルウィンドウを作成するときはいつでも、メインウィンドウの上に、その中で定義されているウィジェットとともに表示されます。

ウィンドウのトップレベルウィンドウのフォーカスを維持するために、 grab_set()を使用できます。 方法。常にトップレベルのウィンドウを他のすべてのウィンドウよりも上に保ちます。

#Import the tkinter library
from tkinter import *

#Create an instance of tkinter frame
win = Tk()
win.geometry("700x350")

def open_win():
   top = Toplevel(win)
   top.geometry("700x250")
   Label(top, text= "Hey Folks!", font= ('Helvetica 14 bold')).pack()
   top.grab_set()

#Create a Label to print the Name
label= Label(win, text="Click the below Button to open the Popup", font= ('Helvetica 18 bold'))
label.pack(pady= 30)

#Create a Button
button= Button(win, text= "Click Me", command= open_win, font= ('Helvetica 14 bold'), foreground= 'OrangeRed3', background= "white")
button.pack(pady=50)
win.mainloop()

出力

上記のコードを実行すると、ポップアップウィンドウを開くためのボタンを含むウィンドウが表示されます。

Tkinterの新しいToplevel()ウィンドウにウィンドウのフォーカスを維持するにはどうすればよいですか?

次に、ボタンをクリックしてポップアップウィンドウを開きます。

Tkinterの新しいToplevel()ウィンドウにウィンドウのフォーカスを維持するにはどうすればよいですか?


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

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

  2. tkinterウィンドウを閉じるにはどうすればよいですか?

    tkinterを使用してアプリケーションを作成するのは簡単ですが、タイトルバーのボタンを使用せずにウィンドウまたはフレームを閉じることが困難になる場合があります。このような場合、 .destroy()を使用できます ウィンドウを閉じる方法。 tkinter属性は互いに独立しているため、ボタンを使用してウィンドウを閉じる別のメソッドを作成できます。 例 #Import the library from tkinter import * #Create an instance of window win = Tk() #Set the geometry of the window win.g