私は、これはあなたが探しているものだと思う:
Tk.attributes("-fullscreen", True) # substitute `Tk` for whatever your `Tk()` object is called
あなたも、wm_attributes
代わりのattributes
を使用することができます。
それからちょうどエスケープキーを結合して、ハンドラにこれを追加します。
Tk.attributes("-fullscreen", False)
別の質問への答えは(wm_attributes
で)これに言及しました。だから、それが私が見つけた方法です。しかし、誰も出てこなかったので何らかの理由で答えが出たとは言えませんでした。だから、投稿する価値があると思った。
ここでは、フルスクリーンのオンとオフを切り替えるためにF11を使用して、どこで脱出だけでそれをオフにします(Xubuntuの14.04でテスト)実施例だ:
import sys
if sys.version_info[0] == 2: # Just checking your Python version to import Tkinter properly.
from Tkinter import *
else:
from tkinter import *
class Fullscreen_Window:
def __init__(self):
self.tk = Tk()
self.tk.attributes('-zoomed', True) # This just maximizes it so we can see the window. It's nothing to do with fullscreen.
self.frame = Frame(self.tk)
self.frame.pack()
self.state = False
self.tk.bind("<F11>", self.toggle_fullscreen)
self.tk.bind("<Escape>", self.end_fullscreen)
def toggle_fullscreen(self, event=None):
self.state = not self.state # Just toggling the boolean
self.tk.attributes("-fullscreen", self.state)
return "break"
def end_fullscreen(self, event=None):
self.state = False
self.tk.attributes("-fullscreen", False)
return "break"
if __name__ == '__main__':
w = Fullscreen_Window()
w.tk.mainloop()
をあなたも、そこに、メニューを非表示にする場合は、私がそれをすることが分かったのは2つの方法だけです。一つはそれを破壊することです。もう1つは、空白のメニューを作成して切り替えることです。
self.tk.config(menu=self.blank_menu) # self.blank_menu is a Menu object
次に、再度表示する場合は、メニューに戻します。あなたがUbuntuの上で作業している-IF
::あなたはこれを行う必要
self.tk.config(menu=self.menu) # self.menu is your menu.
をめちゃくちゃにせずに(目に見えるメニューバーを)Mac上で完全にフルスクリーンウィンドウを作成します。注: 'root.overrideredirect(True)'で ''は私のマシン(Ubuntu)で何も呼び出さない。 'root.overrideredirect'がなければ、タイトルバーが表示されます。 –
jfs
これは私にとっては役に立ちません。それが行う唯一のことはウィンドウを最大化することです。 – exhuma
これは全画面ではありませんが、最大化されています...真実の全画面では全く同じではありません。@Shuleからの回答をご覧ください。 – dm76