1

Tkinter ウィンドウを一番上にプッシュしようとする投稿がかなりあります。

...そして、私が興味を持っている下部のウィンドウについて、私が見つけた1つの投稿(Tkinterについて部分的にのみ):

...ただし、ここでは、現在のターミナル ウィンドウの下に Tkinter ウィンドウを開きたいと思います。ターミナルを開いて、そこで Python シェルを実行するとします。

$ python2.7
Python 2.7.1+ (r271:86832, Sep 27 2012, 21:16:52) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Tkinter as tk
>>> root = tk.Tk()
>>> str(root)
'.'
>>> root.tk.eval('wm stackorder '+str(root))
'.'
>>> root.lower()

入力するとroot.lower()(非常に慎重に、Enter キーを押している間、ウィンドウが一番上に表示されたままになります)、デスクトップ上のウィンドウのスタック順序に変更が見られません (つまり、ウィンドウは単に一番上に表示されたままです)。

今、私が見ることができるものからwm stackorder、Tkinter はおそらくそれ自身のウィンドウのみを追跡します - 適切なウィンドウ マネージャーによって処理されるターミナル ウィンドウ (Python 自体が実行されるウィンドウ) ではありません。あれは正しいですか?(私自身はgnome-terminalUbuntu 11.04 Gnomeで使用しています)

lower()その場合、 tkinter が認識していない、デスクトップ ウィンドウのスタック順の一番下にウィンドウが送信されると期待するのは無理があると思います。しかし、これは正しく理解されていますか? Tkinter からウィンドウを「後ろに」送信する方法はありませんか?

4

1 に答える 1