Tkinter metodo para travar uma janela!

1,154 views
Skip to first unread message

ANascimento

unread,
Jun 25, 2014, 9:39:10 AM6/25/14
to python...@googlegroups.com
Ola estou com um problema em um projeto, que e o seguinte pode-se ver que logo no exemplo a baixo tem um frame com um Button de nome "Abrir", ao clicar nele outra janela se abrira porem se eu clicar novamente na janela com o Button e clicar no Button novamente outra janela se abrira mas não quero isso quero que ao clicar no Button assim que a janela se abrir eu só tenha acesso no frame anterior com o Button se eu fechar a nova janela, já vi algo sobre grab mas não consegui usar ele, se alguém puder me ajudar desde já agradeço!

#-*- coding:UTF-8 -*-
from Tkinter import *
class novo:
        def __init__(self, janela):
self.caixa=Frame(janela)
self.caixa.grid()
self.b=Button(janela, text='Abrir', command=self.new_jan)
self.b.grid()
self.l1=Label(janela, text='raiz!')
self.l1.grid()

def new_jan(self):
                jan=Tk()
self.l=Label(jan, text='Feche esta para poder voltar a raiz!')
self.l.grid()
jan.geometry('300x200')





root=Tk()
novo(root)
root.geometry('300x200')
root.mainloop()
novo()


Lario dos Santos Diniz

unread,
Jun 25, 2014, 4:10:54 PM6/25/14
to python...@googlegroups.com
#-*- coding:UTF-8 -*-
from Tkinter import *
class novo:
        def __init__(self, janela):
            self.caixa=Frame(janela)
            self.caixa.grid()
           
            self.b=Button(janela, text='Abrir', command=self.new_jan)
            self.b.grid()
            self.l1=Label(janela, text='raiz!')
            self.l1.grid()

        def new_jan(self):
            self.jan=Tk()
            self.caixa.grab_set()
            self.l=Label(self.jan, text='Feche esta para poder voltar a raiz!')
            self.l.grid()
            b=Button(self.jan, text='Fechar', command=self.fecha_jan)
            b.grid()
            self.jan.geometry('300x200')
        def fecha_jan(self):
            self.jan.destroy()
            self.caixa.grab_release()

           




root=Tk()
novo(root)
root.geometry('300x200')
root.mainloop()
novo()
--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo quot;Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--

Lário dos Santos Diniz
Administrador PDMS, Programador, Desenhista projetista.
+21 820717-49
Consultorias e Inovações
www.softwarecurriculo.com.br/LarioDiniz
Gosta de Metal? Conheça a Minha banda:
www.aconegro.com



















Reply all
Reply to author
Forward
0 new messages