tkinter python максимизировать окно

Простым способом:

objs.sort(function(a,b) {
  return b.last_nom.toLowerCase() < a.last_nom.toLowerCase();
});

См., что '.toLowerCase()' необходимо для предотвращения ошибок при сравнении строк.

29
задан Bryan Oakley 13 April 2013 в 00:03
поделиться

7 ответов

Если вы хотите установить для полноэкранного атрибута значение True, это так же просто, как:

root = Tk()
root.attributes('-fullscreen', True)

Однако, он не показывает строку заголовка. Если вы хотите, чтобы он был видимым, вы можете изменить размер элемента Tk с помощью метода geometry():

root = Tk()
w, h = root.winfo_screenwidth(), root.winfo_screenheight()
root.geometry("%dx%d+0+0" % (w, h))

С помощью winfo_width() и winfo_height() вы можете получить ширину и высоту или окно, и также вы можете привязать обработчик события к событию <Configure>:

def resize(event):
    print("New size is: {}x{}".format(event.width, event.height))

root.bind("<Configure>", resize)
33
ответ дан A. Rodas 13 April 2013 в 00:03
поделиться

Вы можете сделать это, позвонив

root.state('zoomed')
48
ответ дан kaboom 13 April 2013 в 00:03
поделиться

Первый подход заключается в использовании root.state('zoomed'), но он не должен быть универсально доступным. Он работает как на Windows, так и на моей машине с Ubuntu. Однако, под моей машиной Arch это не так.


Второе - сначала получить максимальный размер , а затем установить геометрию вручную, например:

m = root.maxsize()
root.geometry('{}x{}+0+0'.format(*m))

Это работает на большинстве машин, но не на всех. Например, в моем Arch maxsize() возвращает (1425, 870), а реальная геометрия развернутого окна должна быть (1440, 848). Таким образом, вы также не можете полагаться на это.


И третий, на мой взгляд, лучший подход - использовать root.wm_attributes('-zoomed', 1). Это универсально доступно и кажется самым безопасным. На некоторых машинах масштабирование может увеличиваться только по ширине или по высоте, но по сравнению с предыдущим методом этот никогда не даст вам окно, частично находящееся за пределами экрана.

Наконец, если вы хотите полноэкранное, а не просто увеличенное окно, используйте root.wm_attributes('-fullscreen', 1). Он предоставляет встроенную ссылку на поведение оконного менеджера, таким образом, работая намного лучше, чем играть с overrideredirect и устанавливать геометрию вручную (что на некоторых платформах может привести к неуправляемому окну, которое может быть закрыто только собственным интерфейсом или убивает процесс , не будет отображаться на панели задач и т. д ...)

5
ответ дан thodnev 13 April 2013 в 00:03
поделиться

Наиболее питоническим является "root.wm_state('zoomed'), как упомянуто @ J.F.Sebastian

1
ответ дан splinter 13 April 2013 в 00:03
поделиться

Чтобы показать развернутое окно со строкой заголовка, используйте атрибут «zoomed»

root = Tk()
root.attributes('-zoomed', True)
25
ответ дан azeeman 13 April 2013 в 00:03
поделиться

Я нашел это на другом сайте:

    import Tkinter

    MyRoot = Tkinter.Tk()
    MyRoot.state("zoomed")

    MyRoot.mainloop()

Это решило мою проблему.

1
ответ дан rpecas 13 April 2013 в 00:03
поделиться

С TkAgg в качестве бэкэнда это единственная комбинация, которая максимизирует окно без полноэкранного режима:

win_manager = plt.get_current_fig_manager()
win_manager.window.state('zoomed')
win_manager.full_screen_toggle()
-1
ответ дан twu 13 April 2013 в 00:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: