Уведомления

Группа в Telegram: @pythonsu

#1 Март 15, 2010 21:01:44

UsCr
От:
Зарегистрирован: 2009-11-04
Сообщения: 216
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

Есть тут такая вот тема, но там речь идёт о PyQt4.
А как сделать заставку (просто показать картинку) на Tkinter?

Думал об отдельном потоке, но как убить потом этот поток?..

И сразу ещё вопрос почти по этой теме: умеет ли Tkinter показывать окно без элементов управления (закрыть-свернуть)? Например, Canvas, без кнопочек и рамки окна-славная заставка, считаю я.



Офлайн

#2 Март 16, 2010 06:32:24

Cover Story
От:
Зарегистрирован: 2008-08-26
Сообщения: 192
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

Попробуй так:

from Tkinter import *
master = Tk()
master.overrideredirect(1)
mainloop()



Python 2.7.3
Pyside 1.1.2

Офлайн

#3 Март 16, 2010 15:47:30

UsCr
От:
Зарегистрирован: 2009-11-04
Сообщения: 216
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

Пожалуй, это нужная сторона силы. Но как убить это через n секунд?



Офлайн

#4 Март 16, 2010 17:18:32

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

from Tkinter import *
root=Tk()
root.overrideredirect(1)

def exit():root.destroy()

root.after(1000,exit)
root.mainloop()
Cover Story, за overrideredirect спасибо! (чуть клавиатуру не сломал, пытаясь набрать)



Отредактировано (Март 16, 2010 17:26:43)

Офлайн

#5 Март 16, 2010 17:46:21

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

Предвидя вопрос, “что делать дальше?”, вот пример приложения с заставкой:

#coding:utf-8
from Tkinter import *
root=Tk()
root.withdraw()
txt=Text()
txt.pack()

l=Toplevel()
l.geometry('+200+200')
l.overrideredirect(1)
Label(l,text='Программа запускается\n, терпение, только терпение').pack()


def start():
root.deiconify()
l.destroy()


root.after(2000,start)

root.mainloop()
P.S. приличная программа должна долго запускаться, поэтому предлагаю увеличить время хотя бы до 10 секунд :)



Офлайн

#6 Март 16, 2010 18:42:50

UsCr
От:
Зарегистрирован: 2009-11-04
Сообщения: 216
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

igor.kaist
Предвидя вопрос, “что делать дальше?”, вот пример приложения с заставкой:
Всё не настолько плохо с питоном. Всё плохо с чтением документации.

igor.kaist
P.S. приличная программа должна долго запускаться, поэтому предлагаю увеличить время хотя бы до 10 секунд
И прогресс-бар обязательно ))

Сильное всем спасибо.



Офлайн

#7 Март 17, 2010 09:15:26

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Заставка программы с Tkinter

UsCr
И прогресс-бар обязательно ))
нет, так не модно. Можно писать в одну строчку: “загрузка модуля:time”, “загрузка картинки: folder.png” :)
UsCr
Всё не настолько плохо с питоном. Всё плохо с чтением документации.
на самом деле самому интересно просто было :)



Отредактировано (Март 17, 2010 09:16:35)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version