Ir para conteúdo
Fórum Script Brasil
  • 0

Importar outro arquivo que eu criei


McTheodoren

Pergunta

Fala galera, sou novo em programação e estou tentando fazer um programa simples de base de dados para cadastro de bovinos.
tenho tido algumas duvidas quanto a melhor maneira de escrever o código.
 

Fiz a GUI princopal aqui:

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

from Tkinter import *
import sqlite3, tkMessageBox
from PIL import Image, ImageTk
import Funcoes    #Arquivo que contem as funções!

class Main:
    def __init__(self, master):
        self.frame = Frame(master)
        self.frame.pack()
        
        #Botão Gado
        
        self.botaGado = Button(self.frame)
        self.imgGado = Image.open("img\gado.jpg")
        self.imgBotaGado = ImageTk.PhotoImage(self.imgGado)
        self.botaGado.image = self.imgBotaGado 
        self.botaGado.config(image= self.imgBotaGado,width=100,height=100, bg = 'blue', bd='10', activebackground = 'black', command = Funcoes.funcoes.janelaGado)
        self.botaGado.pack(side=LEFT, padx = 10)
        
        #Botão Lotes
        
        self.botaoLotes = Button( self.frame)
        self.imgLotes = Image.open('img\lotes.jpg')
        self.imgBotaoLotes = ImageTk.PhotoImage(self.imgLotes)
        self.imgBotaoLotes.image = self.imgBotaoLotes
        self.botaoLotes.config(image = self.imgBotaoLotes,width=100,height=100, bg = 'blue', bd='10', activebackground = 'black', command = Funcoes.funcoes.janelaLote)
        self.botaoLotes.pack(padx = 10, side = LEFT)
        
        #Botao Botao Estoque
        
        self.botaoEstoque = Button(self.frame)
        self.imgBotaoEstoque = Image.open('img\estoque.jpg')
        self.imgBotaoEstoque = ImageTk.PhotoImage(self.imgBotaoEstoque)
        self.botaoEstoque.image = self.imgBotaoEstoque
        self.botaoEstoque.config (image = self.imgBotaoEstoque, bg = 'blue', bd = '10', activebackground = 'black', command = Funcoes.funcoes.janelaEstoque)
        self.botaoEstoque.pack(padx = 10, side = LEFT)
      
root = Tk()
root.geometry('800x600')
Main(root)
root.mainloop()

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

E um outro arquivo com as funões dos botoes aqui

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

from Tkinter import*
from PIL import Image, ImageTk
from Main_GUI import * #arquivo onde está o root

class funcoes(object):
    
    #Janela Gado
    
    def janelaGado(self):
        self.JanelaGado = Toplevel(root)
        self.JanelaGado.geometry('800x600')
        self.frameGado= Frame(self.JanelaGado)
        self.frameGado.pack()
        
        #botao Gravar
        
        self.botaoGravar = Button(self.frameGado)
        self.imgGravar = Image.open('img\save.jpg')
        self.imgBotaoGravar = ImageTk.PhotoImage(self.imgGravar)    
        self.botaoGravar.image = self.imgBotaoGravar
        self.botaoGravar.config(image = self.imgBotaoGravar, width = '100', heigh = '100', bg = 'blue', bd = '10')
        self.botaoGravar.pack(side = LEFT)
        
    # func botao lote     
    
    def janelaLote(self):
        self.JanelaLote = Toplevel(root)
        self.JanelaLote.geometry('800x600')
        self.frameLote = Frame(self.JanelaLote)
        self.frameLote.pack()
        #botao Gravar
        
        self.botaoGravar = Button(self.frameLote)
        self.imgGravar = Image.open('img\save.jpg')
        self.imgBotaoGravar = ImageTk.PhotoImage(self.imgGravar)    
        self.botaoGravar.image = self.imgBotaoGravar
        self.botaoGravar.config(image = self.imgBotaoGravar, width = '100', heigh = '100', bg = 'blue', bd = '10')
        self.botaoGravar.pack()
            
    def janelaEstoque(self):
        self.JanelaEstoque = Toplevel(root)
        self.JanelaEstoque.geometry('800x600')
        self.frameEstoque= Frame(self.JanelaEstoque)
        self.frameEstoque.pack()
        
        #botao Gravar
        
        self.botaoGravar = Button(self.frameEstoque)
        self.imgGravar = Image.open('img\save.jpg')
        self.imgBotaoGravar = ImageTk.PhotoImage(self.imgGravar)    
        self.botaoGravar.image = self.imgBotaoGravar
        self.botaoGravar.config(image =self.imgBotaoGravar, width = '100', heigh = '100', bg = 'blue', bd = '10')
        self.botaoGravar.pack(side = LEFT)

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Não estou conseguindo fazer o codigo chamar a função do arquivo das funções!
ele me da erro :    self.botaGado.config(image= self.imgBotaGado,width=100,height=100, bg = 'blue', bd='10', activebackground = 'black', command = Funcoes.funcoes.janelaGado)
AttributeError: 'module' object has no attribute 'funcoes'

Gostaria de saber como chamar a função deste outro arquivo e se esse seria o melhor jeito de fazer isso. Gostaria de saber se eu deveria fazer apenas a função para abrir a janela ao clique e o design da janela em outro lugar ou se colocar a função e a janela juntos não tem problema!

Obrigado pela atenção!!!

Editado por McTheodoren
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...