Mikähän tässä on pielessä kirjoitun tesktin saan messageboxiin mutta yhteenlaskun tulosta en saa messageboxiin? Mitä pitäisi kirjoittaa toisin?
def plus():
luku1 = float(Entry.get(syote1laske))
luku2 = float(Entry.get(syote2laske))
tulos = luku1 luku2
#Entry.delete(vast, 0, 20)
#Entry.insert(vast, 0, tulos)
def tulostus2():
tk.messagebox.showinfo('Yhteenlaskun tulos viestiikkunassa', plus)
Python Tkinter
11
168
Vastaukset
- Anonyymi
Unohda Tkinter ja luo Pythonin käyttöliittymät Qt:n avulla. https://www.qt.io/qt-for-python
Sain tehtyä kaksi eri vaihtoehtoa. Ensimmäinen on oletettavasti se mitä haet toinen taas on vain asioiden helpotusta varten.
def plus():
luku1 = 2
luku2 = 2
tulos = luku1 luku2
return tulos
def tulostus2():
messagebox.showinfo('Yhteenlaskun tulos viestiikkunassa', plus())
tulostus2()
Tuo return palauttaa stringin funktiosta, jotenka lisäämällä vain sen pitäisi päästä pitkälle.
Toimisiko alla oleva koodi tarkoituksessas kuitenkin paremmini? Näyttäisit laskun vastauksen välittömästi. Korvaa tietenkin luku1 ja luku2 haluamillasi luvuilla.
def plus():
luku1 = 2
luku2 = 2
tulos = luku1 luku2
messagebox.showinfo('Yhteenlaskun tulos viestiikkunassa', tulos)
plus()Kiitos!
Tuo return ja plus()): lisäys sai toiminaan oikein.
Mutta mikäs tuo qt on en ole aikaisemmin siihen törmännyt? Siihen pitää tutustua jossakin vaiheessa.Voin joo suositella myös Tkinterin unohtamista mutta myös Qt:n.
Käyttöliittymät kannattaa tehdä standardilla tavalla HTML5:lle. Netistä löytyy useita Python -> Javascript kääntäjiä
- Anonyymi
Python 2.7 kyse?
tk.messagebox.showinfo("Yhteenlaskun tulos viestiikkunassa", plus)
edellyttääkö että plus on merkkijono?
Python 3:ssa toimii vallan hyvin.- Anonyymi
plus() on funktion nimi, eikä muuttuja, kuten edellä sotkin.
- Anonyymi
Anonyymi kirjoitti:
plus() on funktion nimi, eikä muuttuja, kuten edellä sotkin.
Taaskaan ei Suomi24 moderointi toimi oikein, mitä hittoa ne sitä rassaa koko ajan, pirun ärsyttävää tuollainen toimimaton moderointi. Eikö ne voisi palkata jotakin opettamaan moderointia näille siivooja tytöille, ettei ne aina olisi pilaamassa asia viestejä.
- Anonyymi
Anonyymi kirjoitti:
Taaskaan ei Suomi24 moderointi toimi oikein, mitä hittoa ne sitä rassaa koko ajan, pirun ärsyttävää tuollainen toimimaton moderointi. Eikö ne voisi palkata jotakin opettamaan moderointia näille siivooja tytöille, ettei ne aina olisi pilaamassa asia viestejä.
Tätä ne rassasi toissa yönä, kun tämä keskustelu sivusto ei toiminut. Nyt on taas palattu syyttelemään käyttäjiä sääntöjen vastaisista viesteistä. Vika on kuitenkin moderoinnin toimimattomuudesta, mutta käyttäjien on kannettava se häpeä minkä sääntöjen rikkomisesta joillekin koituu.
Kokeilin muodossa messagebox.showinfo('Yhteenlaskun tulos viestiikkunassa', plus) ja tulos oli sekava mutta tuo plus()) näyttää tuloksen oikein.
Ongelma on se että en saa tähän haluaamani ikkunaan kuvaa näkyviin joka valitaan root tasolta eli ensimmäisestä ikkunasta jossa on painike jolla saadaan tämä ikkuna näkyviin. Kaikki tekstit näkyvät oikein ikkunassa mutta kuva ei näy ollenkaan.
Kun tässä rivissä
canvas = Canvas(show, width = 384, height = 384) on sulkujen sisällä show niin se herjaa rivitä canvas.create_image(10,10, image = photo)
Alla on kyseinen koodi.
-------------
def kuva():
show = Tk()
show.title("Kuvan esittäminen")
frame = Frame(show)
frame.pack()
#kuva ikkunan tekskti
teksti = Label(show, text = "Tähän tulee valokuva?")
teksti.place(x=250, y=10)
#kuvan liittäminen ikkunaan
canvas = Canvas(show, width = 384, height = 384)
photo = ImageTk.PhotoImage(Image.open ('lena.gif'))
canvas.create_image(10,10, image = photo)
canvas.place(x=20, y=50)
#img = Image.open("lena.gif")
#photo = ImageTk.PhotoImage(img)
#lab = Label(show, image = photo)
#lab.place(x=30, y=50)
#photo = PhotoImage(file = 'lena.gif')
#label = Label(show, image = photo)
#label.place(x=30, y=30)
#kuva ikkunan koko ja sijaihti
show.geometry("650x650 100 100")
#kuva ikkunan sulkeminen
def sulje():
show.destroy()
buttonkuva = tk.Button(show, text='Sulje ikkuna', height = 1, width = 15, command = sulje)
buttonkuva.place(x=260, y=620)
show.mainloop()
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Anteeksi mies
En vaan osaa kohdata sinua ja olla normaali. En tiedä mikä vaivaa. Samaan aikaan tekee mieli tulla lähelle ja kuitenkin5810367Mietin aina vain
Minä niin haluaisin nähdä sinut. Ei tuo yhden ainoan kuvan katsominen paljon helpota... Miksi sinä et voisi olla se roh174331Hetken jo luulin, että en ikävöi sinua koko aikaa
Mutta nyt on sitten taas ihan hirveä ikävä jotenkin. Tiedätköhän sinä edes, kuinka peruuttamattomasti minä olen sinuun r323616Kysely lieksan miehille
Olemme tässä pohtineet tällaista asiaa, että miten on. Tästä nyt on paljon ollut juttua julkisuudessakin aina sanomaleht1062996Outoa että Trump ekana sanoutui irti ilmastosopimuksesta
kun Kaliforniaa riepottelee siitä johtuvat tuhoisat maastopalot. Hirmumyrskytkin ovat USA:ssa olleet tuhoisia.4352162Palstan henkisesti sairaat ja lihavat
Täällä on sairaita, työttömiä ihmisiä kirjoittelemassa joilla ei ole tarkoituksena kuin satuttaa ihmisiä. Jos eksyt pals1142160Saan kengurakkaan kotiin viikon päästä
Mitä tapahtui? Martina hehkutti tätä stoorissaan reilu viikko sitten, mutta eipä aussimiestä Suomessa näkynyt, vaan tapa2501587FinFamin ryhmät
Älkää hyvät ihmiset luottako tähän tahoon. Ryhmiä on, mutta eivät ne toimi. Ihmisiä savustetaan ulos, vaikka näissä piir01381Osmo Peltola voitti ansaitusti Kultaisen Venlan - Kirvoitti yleisöltä mahtavan reaktion!
JEE, onnea Osmo! Osmo Peltola voitti Vuoden esiintyjän Kultainen Venla -palkinnon. Isä-Peltsin ja Osmon luontoseikkailu761213Olen vähän
Hysteerinen se on totta. Etkai ymmärrä miten syvästi tunnen sinua kohtaan. Ja olet aina lähelläni. Olet osa jo jotain. I101145