Ecco una specie di esempio, ho tolto tutto il superfluo e forse anche qualcosa di piu. Di sicuro cosi non funziona ma e solo per far capire come dovrebbe essere il codice.
Ricapitolando ecco cosa vorrei fare da un form apro/creo un frame con un bottone che invia una mail e chiude il frame creato per tornare al form principale. Non funzionando, cioe invia la mail ma non distrugge il frame ho aggiunto un altro bottone per fare questo.
sperando di essermi fatto comprendere vi ringrazio e insultatemi pure, sono qui per imparare.
grazie
import tkinter
import tkinter.ttk as ttk
import time
import smtplib
form1=tkinter.Tk()
form1.geometry("400x400")
def CreaUnFrame():
Frame2 = ttk.Frame(form1)
Frame2.place(relx=0.200, rely=0.136, relheight=0.411, relwidth=0.520)
def inviamail():
oggetto="Subject: Soggetto\n\n"
testo="Testo msg"
msg = oggetto + testo
messaggio=msg.encode('utf-8')
email = smtplib.SMTP("smtp.gmail.com", 587)
email.ehlo()
email.starttls()
email.login("pippo@gmail.com", "password")
email.sendmail("pippo@gmail.com","pippo@gmail.com", messaggio)
email.quit()
Frame2.destroy
ButtonInvia = tkinter.Button(Frame2)
ButtonInvia.place(relx=0.2, rely=0.703, height=33, width=75)
ButtonInvia.configure(text='''Invia''')
ButtonInvia.configure(command=inviamail)
Button2 = tkinter.Button(Frame2)
Button2.place(relx=0.626, rely=0.703, height=33, width=75)
Button2.configure(text='''Esci''')
Button2.configure(command=Frame2.destroy)
Button1 = tkinter.Button(Frame2)
Button1.place(relx=0.626, rely=0.703, height=33, width=75)
Button1.configure(text='''invia mail''')
Button1.configure(command=CreaUnFrame)
form1.mainloop()