Teen ensimmäistä kertaa tkinterin kanssa koodailuja ja ymmärrän perusperiaatteen. Minulla on nyt määritelty def ja se hakee toisesta tiedostosta funktiot. Tämä koodi siis toimii hyvin, mutta en tunnu saavan sitä nyt tulostettua toiseen ikkunaan.
Koodi on seuraavanlainen (kesken täysin tiedän)
from functions import Ero
from tkinter import *
def main():
alku = input("Anna alkuetäisyys: ")
loppu = input("Anna loppuetäisyys: ")
ero = laskeEro(alku, loppu)
print("Antamilla etäisyyksillä ero on {} kilometriä".format(ero))
if (__name__ == "__main__"):
main()
window=Tk()
window.geometry("500x500")
window.title("Etäisyyslaskuri")
label1 = Label(main, text = pvm1).grid(row=0)
label2 = Label(main, text = pvm2).grid(row=1)
v1 = tk.Entry(main)
v2 = tk.Entry(main)
v1.grid(row=0, column=1)
v2.grid(row=1, column=1)
Nappi = tk.Button(text='Laske ero', command=main)
window.mainloop()
Tosiaan tiedän, että puuttu napin sijainti mm. ja paljon muuta.
Mutta miten pystyn laittamaan tuon def(main) funktion tuonne tkinter komentoon. Tärkeää on että tuo alku ja loppu ovat noita mitä entry kenttään laitetaan. Ja tosiaan puuttuhan tuosta vielä tuo lopputuloksen printtaaminen, onko ehdotuksia miten se saadaan.
OIen tässä viikon verran kokeillut kaikenlaisia ja tekisi mieli vain tehdä koko homma alusta alkaen, mutta kun koodi toimii hyvin muuten, en vaan saa sitä toiseen ikkunaan.. :/
Koodi on seuraavanlainen (kesken täysin tiedän)
from functions import Ero
from tkinter import *
def main():
alku = input("Anna alkuetäisyys: ")
loppu = input("Anna loppuetäisyys: ")
ero = laskeEro(alku, loppu)
print("Antamilla etäisyyksillä ero on {} kilometriä".format(ero))
if (__name__ == "__main__"):
main()
window=Tk()
window.geometry("500x500")
window.title("Etäisyyslaskuri")
label1 = Label(main, text = pvm1).grid(row=0)
label2 = Label(main, text = pvm2).grid(row=1)
v1 = tk.Entry(main)
v2 = tk.Entry(main)
v1.grid(row=0, column=1)
v2.grid(row=1, column=1)
Nappi = tk.Button(text='Laske ero', command=main)
window.mainloop()
Tosiaan tiedän, että puuttu napin sijainti mm. ja paljon muuta.
Mutta miten pystyn laittamaan tuon def(main) funktion tuonne tkinter komentoon. Tärkeää on että tuo alku ja loppu ovat noita mitä entry kenttään laitetaan. Ja tosiaan puuttuhan tuosta vielä tuo lopputuloksen printtaaminen, onko ehdotuksia miten se saadaan.
OIen tässä viikon verran kokeillut kaikenlaisia ja tekisi mieli vain tehdä koko homma alusta alkaen, mutta kun koodi toimii hyvin muuten, en vaan saa sitä toiseen ikkunaan.. :/
Vastaukset 8
Vanhimmat
Muutin hieman koodiani. En saa vieläkään ikkunaa aukemaan. Kirjoitan kysymyksi koodiin.
from functions import Ero
def main():
pvm1 = input("Anna alkuetäisyys: ")
pvm2 = input("Anna loppuetäisyys ")
ero = Ero(alku,loppu)
print("Antamillasi etäisyyksillä ero on {} kilometriä".format(ero))
if (__name__ == "__main__"):
import tkinter
main()
window = tkinter.Tk()
window.title("Päivämäärä laskuri")
tkinter.Label(window, text = "alku").grid(row = 0)
tkinter.Entry(window).grid(row = 0, column = 1) #Miten saan tuon alku funktion tähän, jotta koodi ymmärtää tähän kohtaan sijoitetun arvon olevan tuo "alku"
tkinter.Label(window, text = "pvm2").grid(row = 1)
tkinter.Entry(window).grid(row = 1, column = 1)
Nappi = tkinter.Button(text='Laske ero', command=main).grid(row = 2, column = 1)
window.mainloop()
Hakkaan kyllä tämän kanssa jotenkin niin paljon näppäimistöä mitään aikaa saamatta.
Entrystä saat arvon get()-metodilla. Nakkaa se entry ensin muuttujaan.
entry = tkinter.Entry(root)
entryString = entry.get()
Tuosta linkistä saattaa löytyä apuja.
https://smallguysit.com/index.php/2017/11/11/tkinter-entry-widget/
Kannattaa lueskella tutoriaaleja. Ikkunan saa auki parilla rivillä.
>>> from tkinter import *
>>> Tk().mainloop()
Kannattaa pitää turpansa kiinni jos ei asiasta mitään ymmärrä!
Ei minulla ole mitään ongelmia ikkunoiden aukomisessa. Ymmärrysongelma on jollakulla toisella.
Ai se olet sinä Iinukshihhuli joka et osaa edes Pythonia :-D
Harmittaa varmaan olla vajaataitoinen. No ei sitä Pythonia sudolla saa kuntoon...
Sinä näytät hyvin tietävän miltä tuntuu olla "vajaataitoinen", luultavasti olet muullakin tavoin kehittymätön ihmisenä, oletko holhouksenalainen.