• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

PYPT

Erro Em Tkinter

15 mensagens neste tópico

Uso Ubuntu Linux para programar em Python.

from Tkinter import *

class Janela:

    def _init_(self,toplevel):

        self.frame1=Frame(toplevel)
        self.frame1.pack()

        
        self.titulo=Label(self.frame1,text='Python Tutorial')
        self.titulo['font']=('Verdana','20','bold')
        self.titulo['bg']='yellow'
        self.titulo['fg']='black'
        self.titulo['width']=15
        self.titulo['height']=3
        self.titulo.pack()


instancia=Tk()        
Janela(instancia)
instancia.mainloop()

Traceback (most recent call last):

  File "/home/marco/Desktop/pyensinapython.py", line 21, in <module>

    Janela(instancia)

TypeError: this constructor takes no arguments

Alguém me pode ajudar s.f.f.?

Obrigado!

:D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

from Tkinter import *

class Janela:

def _init_(self,toplevel):

	self.frame1=Frame(toplevel)
	self.frame1.pack()


	self.titulo=Label(self.frame1,text='Python Tutorial')
	self.titulo['font']=('Verdana','20','bold')
	self.titulo['bg']='yellow'
	self.titulo['fg']='black'
	self.titulo['width']=15
	self.titulo['height']=3
	self.titulo.pack()


instancia=Tk()        
Janela= Frame(instancia)
instancia.mainloop()

Ve lá se é assim que querias que fica-se.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

from Tkinter import *

class Janela:

def _init_(self,toplevel):

	self.frame1=Frame(toplevel)
	self.frame1.pack()


	self.titulo=Label(self.frame1,text='Python Tutorial')
	self.titulo['font']=('Verdana','20','bold')
	self.titulo['bg']='yellow'
	self.titulo['fg']='black'
	self.titulo['width']=15
	self.titulo['height']=3
	self.titulo.pack()


instancia=Tk()        
Janela= Frame(instancia)
instancia.mainloop()

Ve lá se é assim que querias que fica-se.

Já não me aparece o erro!

Agora tenho outro problema:

Quando executo o programa aparece o programa "vazio" sem nada do que eu criei (frases, butoes,...) dentro dele.

Alguém me pode ajudar s.f.f.?

Obrigado!

:D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Onde tens Janela(instancia) mete janela = Janela(instancia).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

from Tkinter import *

class Janela:

def _init_(self,toplevel):

	self.frame1=Frame(toplevel)
	self.frame1.pack()


	self.titulo=Label(self.frame1, text='Python Tutorial')
	self.titulo.font=('Verdana','20','bold')
	self.titulo.bg='yellow'
	self.titulo.fg='black'
	self.titulo.width=15
	self.titulo.height=3
	self.titulo.pack()


instancia=Tk()        
Janela= Frame(instancia)
instancia.mainloop()

Será?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

from Tkinter import *

class Janela:

def _init_(self,toplevel):

	self.frame1=Frame(toplevel)
	self.frame1.pack()


	self.titulo=Label(self.frame1, text='Python Tutorial')
	self.titulo.font=('Verdana','20','bold')
	self.titulo.bg='yellow'
	self.titulo.fg='black'
	self.titulo.width=15
	self.titulo.height=3
	self.titulo.pack()


instancia=Tk()        
Janela= Frame(instancia)
instancia.mainloop()

Será?

Ainda não dá!

Eu no Windows fazia:

instancia=Tk()       

Janela(instancia)

instancia.mainloop()

Em linux, não sei como se faz...  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em linux, não sei como se faz...  :D

O código fonte em Python (distribuição base) é multiplataforma, logo o teu código em Windows funciona sem alterações em igual em Linux.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em linux, não sei como se faz...  :D

O código fonte em Python (distribuição base) é multiplataforma, logo o teu código em Windows funciona sem alterações em igual em Linux.

Isso quero eu que ele funcione igual, mas não estou a conseguir isso.  :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
from Tkinter import *

class Janela:

def _init_(self,toplevel):

	self.frame1=Frame(toplevel)
	self.frame1.pack()


	self.titulo=Label(self.frame1, text='Python Tutorial', font=('Verdana','20','bold'), bg='yellow', fg='black', width=15, height=3)
	self.titulo.pack()


instancia=Tk()        
Janela= Frame(instancia)
instancia.mainloop()

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em linux, não sei como se faz...  :D

O código fonte em Python (distribuição base) é multiplataforma, logo o teu código em Windows funciona sem alterações em igual em Linux.

Isso quero eu que ele funcione igual, mas não estou a conseguir isso.  :D

É pá,.. já o m@ko também me falou do mesmo. Diz que costuma de fazer cenas em windows que para trabalharem em linux tem de mudar uams ceninhas (e/ou  vice-versa).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Em linux, não sei como se faz...  :D

O código fonte em Python (distribuição base) é multiplataforma, logo o teu código em Windows funciona sem alterações em igual em Linux.

Isso quero eu que ele funcione igual, mas não estou a conseguir isso.  :D

É pá,.. já o m@ko também me falou do mesmo. Diz que costuma de fazer cenas em windows que para trabalharem em linux tem de mudar uams ceninhas (e/ou  vice-versa).

realmente é estranho , quando deveria ser totalmente portável :hmm:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

from Tkinter import *

class Janela:

def _init_(self,toplevel):

	self.frame1=Frame(toplevel)
	self.frame1.pack()


	self.titulo=Label(self.frame1, text='Python Tutorial', font=('Verdana','20','bold'), bg='yellow', fg='black', width=15, height=3)
	self.titulo.pack()


instancia=Tk()        
Janela= Frame(instancia)
instancia.mainloop()

Também não dá!

Quando executo o programa aparece o programa "vazio" sem nada do que eu criei (frases, butoes,...) dentro dele.

:D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Também não dá!

Quando executo o programa aparece o programa "vazio" sem nada do que eu criei (frases, butoes,...) dentro dele.

:D

É impressão minha ou não estão a criar nenhuma instância do objecto Janela? :D

EDIT:

Além disso também tinhas outro erro, é __init__ e não _init_.

from Tkinter import *

class Janela:

        def __init__(self,toplevel):

                self.frame1=Frame(toplevel)
                self.frame1.pack()


                self.titulo=Label(self.frame1, text='Python Tutorial', 
font=('Verdana','20','bold'), bg='yellow', fg='black', width=15, 
height=3)
                self.titulo.pack()


instancia = Tk()        
janela = Janela(instancia)
instancia.mainloop()

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Também não dá!

Quando executo o programa aparece o programa "vazio" sem nada do que eu criei (frases, butoes,...) dentro dele.

:D

É impressão minha ou não estão a criar nenhuma instância do objecto Janela? :D

EDIT:

Além disso também tinhas outro erro, é __init__ e não _init_.

from Tkinter import *

class Janela:

        def __init__(self,toplevel):

                self.frame1=Frame(toplevel)
                self.frame1.pack()


                self.titulo=Label(self.frame1, text='Python Tutorial', 
font=('Verdana','20','bold'), bg='yellow', fg='black', width=15, 
height=3)
                self.titulo.pack()


instancia = Tk()        
janela = Janela(instancia)
instancia.mainloop()

Finalmente, já dá!

O correcto como dizes é __init__

Obrigado a todos que me ajudaram!

:)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Também não dá!

Quando executo o programa aparece o programa "vazio" sem nada do que eu criei (frases, butoes,...) dentro dele.

:D

É impressão minha ou não estão a criar nenhuma instância do objecto Janela? :D

EDIT:

Além disso também tinhas outro erro, é __init__ e não _init_.

from Tkinter import *

class Janela:

        def __init__(self,toplevel):

                self.frame1=Frame(toplevel)
                self.frame1.pack()


                self.titulo=Label(self.frame1, text='Python Tutorial', 
font=('Verdana','20','bold'), bg='yellow', fg='black', width=15, 
height=3)
                self.titulo.pack()


instancia = Tk()        
janela = Janela(instancia)
instancia.mainloop()

Finalmente, já dá!

O correcto como dizes é __init__

Obrigado a todos que me ajudaram!

:)

afinal foi mais nabice da tua (nossa) parte do que problema do python  :cheesygrin: :wallbash:

enfim , a gente aprende  :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora