
ArteEN
Membros-
Total de itens
692 -
Registro em
-
Última visita
Tudo que ArteEN postou
-
ok, é o seguinte no caso, não esta mudando o plano de fundo, e sim criando um novo elemento. quando você cria, o ultimo elemento criado fica por cima. o que você pode fazer é ao invez de destruir a label, simplemente mudar a imagem dela from tkinter import * r = Tk() l = Label(r, text='teste') l.pack() img = PhotoImage(file='') l.config(image=img))
-
olhei por cima, e não identifiquei onde é feito a mudança do fundo, seria bom se você indicasse as linhas. uma coisa que dificulta é que você colocou o codigo, mas não tem as imagens, vai ser complicado testar. se puder fazer um zip apenas com o essencial para o teste vai ajudar muito
-
já fiz interfaces com tkinter, mas não tinha menus do tipo cabeçalho que fica no topo. sempre fiz usando botões, ou o notebook. mas pela experiencia que tive com tkinter, é que sim, você pode associar objetos ao array, pois o coletor de lixo vai eliminar o objeto se não tiver uma referencia. o erro no seu codigo esta no uso do globals se você fizer o print das chaves, vera que o array em questão não faz parte do escopo global print(globals().keys()) #outros testes que pode exclarecer print(array in globals()) print(objeto in globals()) a solução para o erro que você tem agora é chamar o objeto direto do array sem usar o globals objeto = Opcao [0] acredito que faltou o self no inicio self.Opcao = [] ### self.objeto = self.Opcao[0]
-
Tkinter com ítens de menu oriundos de um arquivo texto ...
pergunta respondeu ao Rhaone da Silva de ArteEN em Python
acredito que o possivel erro esta na chamada prematura do root.mainloop(), esse comando deve ser o ultimo do script- 3 respostas
-
não é possivel compreender o codigo por completo, ele faz parte de um objeto, e este codigo é apenas um metodo do objeto o codigo em questão se for executado ira levantar erro
-
import tkinter root = tkinter.Tk() l1 = tkinter.Label(root, text='teste 1') l2 = tkinter.Label(root, text='teste 2') def packL1(): l1.pack() root.after(1000, packL2) def packL2(): l2.pack() root.after(2000, packL1) root.mainloop()
-
quase, as labels só serão exibidas depois de colocar o gerenciador (pack, grid ou place) acho que seria melhor fazer uma função para exibir cada label
-
erro de aliamento, em algum lugar no scrit no inicio de alguma linha tem ou sobra espaços
-
não se pode usar sleep junto com tkinter, a explicação é que tkinter tem seu proprio loop principal e o sleep ira contra esse loop, use after
-
Como resolver este problema com o tkinter Entry e funções
pergunta respondeu ao Pedro Vidal de ArteEN em Python
segue link para um bom material sobre tk https://tkdocs.com/ quando ao seu script, não recomendo usar duas janelas, inicio e medida, seria melhor usar frames, ou notebook, tem mostrando como se usa no link acima from tkinter import * from time import sleep import pandas as pd #import openpyxl def medidas(): sleep(0.3) inicio.destroy() medidas = Tk() medidas.title("MEDIDAS") medidas.geometry("400x800") #variaveis agua = DoubleVar() sal = DoubleVar() far = DoubleVar() #imagens #img_medidas = PhotoImage(file="medidastcc.png") #img_botao1 = PhotoImage(file="botaosim.png") #img_botao2 = PhotoImage(file="botaopadrao.png") #labels lab_medidas = Label(medidas, text='medidastcc') lab_medidas.pack() #entrada de dados en_agua = Entry(medidas, bd=2, textvariable=agua) en_agua.place(width=339, height=50, x=32, y=322) en_sal = Entry(medidas, bd=2, textvariable=sal) en_sal.place(width=339, height=50, x=32, y=449) en_far = Entry(medidas, bd=2, textvariable=far) en_far.place(width=339, height=50, x=32, y=584) #botoes bt_ok = Button(medidas, text='botaosim') bt_ok.place(width=150, height=100, x=35, y=650) bt_padrao = Button(medidas, text='botaopadrao', command=lambda : salvar(agua, sal, far)) bt_padrao.place(width=150, height=100, x=220, y=650) return medidas def salvar(agua, sal, far): print(agua.get()) print(sal.get()) print(far.get()) inicio = Tk() inicio.title("PROJETO YEAGER") inicio.geometry("400x800") #importar as imagens #img_inicio = PhotoImage(file="iniciotcc.png") #img_botao3 = PhotoImage(file="botaoentrar.png") #labels lab_inicio = Label(inicio, text='iniciotcc') #image=img_inicio) lab_inicio.pack() #botao bt_entrar = Button(inicio, text='botoentrar', command=medidas) bt_entrar.place(width=200, height=100, x=95, y=550) inicio.mainloop() -
Como resolver este problema com o tkinter Entry e funções
pergunta respondeu ao Pedro Vidal de ArteEN em Python
import tkinter root = tkinter.Tk() var = tkinter.DoubleVar() entrada = tkinter.Entry(root, textvariable=var) entrada.pack() def enter(arg): print(var.get()) root.bind('<Return>', func=enter) root.mainloop() -
Como resolver este problema com o tkinter Entry e funções
pergunta respondeu ao Pedro Vidal de ArteEN em Python
DoubleVar é uma função que retorna um objeto para guardar e passar valor entre widgets do tkinter você cria, e passa para a entry, entry por sua vez vai escrever o valor nesse objeto var, e você pega o valor do objeto var https://github.com/elton1013/dro_fresadora nesse link tem uma aplicação que fiz, vai ser dificil mas se procurar vai achar usando -
Como resolver este problema com o tkinter Entry e funções
pergunta respondeu ao Pedro Vidal de ArteEN em Python
precisa usar objetos de armazenamento stringvar, para strings intvar, para numeros inteiro doublevar, para numeros flutuantes isso faz parte do tkinter, procure na documentação -
basta colocar os espaços na frente de cada linha, o costume é 4 espaços
-
o problema esta no def tarefa, é uma função vazia, vai dar erro mesmo, só compara com a def main que tem conteudo
-
é para se usar dois sinais de =, você esta usando um
-
o comando return é usado para mandar informação para fora da função, logo ele não pode fica sozinho. precisa returna algo. def nao_retorna(): a = 1 + 1 return def retorna(): a = 1 + 1 return a b = nao_retorna() #b sera None c = retorna() #c sera 2
-
While não funciona depois de uma tentativa errada
pergunta respondeu ao milena estudante de ArteEN em Python
normal, veja que no codigo o ultimo if é para ver se é diferente de sim, depois repete tudo. o que você tem que fazer é colocar essa parte de validar sim ou não em um loop while, ou seja você tera dois loops no seu codigo. e ao invez de break você usara exit, ou return se começar a usar funções -
fiz uns 3 ou 4 videos sobre matplot, em um deles eu mostro como editar a label dos tics
-
tenta rodar pelo terminal, só para teste
-
questão de condicionais de primeiro periodo.
pergunta respondeu ao Fernando Moraes crescencio de ArteEN em Python
isso é bem introdutorio, se esta fazendo algum curso aconselho a reler o material passado, se esta vendo tutoriais pela internet basta rever condicional if -
use o modulo json, tem o metodo para converte json para dicionario, ai basta respeitar a hierarquia da estrutura
-
de onde vem islnScreen?
-
você esta seguindo algum tutorial? suas duvidas são fora do comum, algumas coisas em seus scripts não fazem sentido. linha 8, norte é passado como variavel, mas essa variavel não foi criada em nenhum lugar
-
toda a função que não tem return especificado, por padrão retorna None