Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 14, 2013 17:01:49

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Есть простое окошко с отображением времени и даты.

from tkinter import Tk, Label
from datetime import datetime
 
root = Tk()
x, y = root.maxsize()
root.title('Clock')
root.geometry('+{x}+{y}'.format(x=x-200, y=y-150))
root.overrideredirect(False)
 
label = Label(root)
label.pack(expand=True, fill='both')
 
def change_time_date():
    now = datetime.now().strftime('%H:%M:%S')
    today = datetime.today().strftime('%Y.%m.%d')
    time_date = '{}\n\n{}'.format(now, today)
    label.config(text=time_date, bg='#000000', fg='#FFFFFF', font=('Segoi UI', 20, 'bold'))
    label.after(1000, change_time_date)
 
change_time_date()
root.mainloop()

Конечно, можно использовать overrideredirect(True), но для меня в этом есть минусы.
Можно ли другим способом минимизировать все украшения окна(я про каёмки, системное меню, оно же title bar)?

Отредактировано buddha (Авг. 14, 2013 17:02:32)

Офлайн

#2 Авг. 14, 2013 19:17:13

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

buddha
Вам вроде griffon предлагал решение с

master.attributes("-fullscreen", 1)
Нужно просто не на полный экран?



Отредактировано 4kpt (Авг. 14, 2013 19:17:38)

Офлайн

#3 Авг. 15, 2013 08:44:18

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Щас другая задачка. Это окошко не нужно же на полный экран)
Если кроме как убрать оконный менеджер overrideredirect(True) нет других способов. Придётся оставить…

Офлайн

#4 Авг. 15, 2013 11:32:47

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Можно сократить. Сделать тоньше и только с кнопкой закрыть…
Если надо - могу написать :)



Офлайн

#5 Авг. 15, 2013 14:21:43

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Не стоит… оставлю overrideredirect(True)
А в PyQT такая возможность есть? Намного он сильнее ткинтера?

Отредактировано buddha (Авг. 15, 2013 14:22:07)

Офлайн

#6 Авг. 15, 2013 15:19:39

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

За PyQT придеться дать денюжку :)
buddha
Вы что серьезно хотите менять библиотеку из-за этого???



Офлайн

#7 Авг. 15, 2013 15:55:38

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Нет, не поменяю =), из интереса спросил.
Так намного PyQT сильнее ткинтера?

Офлайн

#8 Авг. 16, 2013 07:46:20

Griffon
От: Ukrain, Zaporozhie
Зарегистрирован: 2009-03-04
Сообщения: 324
Репутация: +  11  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Qt вообще очень сильная штука, независимо от языка программирования.
И да, только overrideredirect и собственные бинды на все стандартные функции окна.
Смотрю вы решили выжать из Тк максимум : )



Офлайн

#9 Авг. 16, 2013 07:55:45

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Griffon
Меня вообще PyQt удручает. Есть вещи, которые реализованы из рук вон плохо. Простое решения из Tkinter приходится писать через одно место ввиду специфики. Хотя есть вещи, от которых на лице появляется довольная улыбка. В общем, идеального моделировщика GUI найти невозможно :)

Просто tkinter это обертка вокруг ttk, а в ttk нет других методов отображения кроме overrideredirect. Есть еще сокращенный, про который я написал выше и все. Хотя жаль, очень жаль :(



Отредактировано 4kpt (Авг. 16, 2013 07:56:06)

Офлайн

#10 Авг. 16, 2013 09:03:35

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как убрать title bar у окна? Tkinter

Griffon
Смотрю вы решили выжать из Тк максимум : )
Ну как то так получилось, что из-за простой задачи я упёрся в потолок ткинтера, касательно менеджера окон.

4kpt
Самое главное, что tkinter входит в стандартную библиотечку. И, думаю, с не сложными задачами он вполне справляется. Это жеж плюс большой)

Отредактировано buddha (Авг. 16, 2013 09:03:57)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version