【问题标题】:tkinter on OSX: open new window instead of tabOSX 上的 tkinter:打开新窗口而不是选项卡
【发布时间】:2019-03-04 21:20:48
【问题描述】:

我想在 mac OSX (10.14) 上的 tkinter 应用程序 (python 3.6.5) 中打开一个新窗口。 Existing answers say to use TopLevel。如果 System Preferences -> Dock -> “Prefer tabs when opening documents”设置为“In Full Screen Only”,则以下代码有效。但是,当该首选项设置为“始终”时,应用程序会以不同的方式执行并在新选项卡中打开 TopLevel,这不是我想要的行为(无论用户的系统首选项如何,我实际上都在寻找一个阻止弹出警报窗口)。

import sys
from tkinter import *

ABOUT_TEXT = "I want this to open in a new window, not a tab"

def newWindow():
    toplevel = Toplevel(app)
    label1 = Label(toplevel, text=ABOUT_TEXT, height=0, width=100)
    label1.pack()


app = Tk()
app.title("tkinter: new window on mac")
app.geometry("500x300+200+200")


b = Button(app, text="Quit", width=20, command=app.destroy)
button1 = Button(app, text="Open new window", width=20, command=newWindow)
b.pack(side='bottom',padx=0,pady=0)
button1.pack(side='bottom',padx=5,pady=5)

app.mainloop()

【问题讨论】:

    标签: python macos tkinter


    【解决方案1】:

    不知道为什么,但使用 root.resizable(False, False) 来停止更改窗口大小意味着创建了一个新窗口而不是选项卡。

    【讨论】:

      猜你喜欢
      • 2012-07-06
      • 2012-01-28
      • 2011-06-21
      • 2011-10-29
      相关资源
      最近更新 更多