Python Tkinter

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)

11

360

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi
    • 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ä


      • Hyvä että toimii.


    • 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

    1. Persut eivät ole kertoneet euronkaan edestä säästökohteita

      Mutta änkyttävät kysellä niistä muilta jatkuvasti. Vaikuttaa ettei persuilla ole kykyä omaan ajatteluun ja päätöksenteko
      Maailman menoa
      274
      3487
    2. Työeläkeloisinta Suomen suurin talousongelma

      Työeläkeloisinta maksaa vuodessa lähes 40 miljardia euroa, josta reilut 28 miljardia on pois palkansaajien ostovoimasta.
      Maailman menoa
      129
      1869
    3. Israel euroviisujen 2.

      Israel sai taas eniten yleisöääniä. Suomesta täydet 12 pistettä, poliittinen ”ammattiraati” antoi 0 pistettä. Hyvä Is
      Luterilaisuus
      300
      1619
    4. Persujen puoluekokous 2026

      Missä ja Milloin pidetään ?
      Maailman menoa
      77
      1462
    5. 77
      1446
    6. Odotettu tulos Taivalvaaran hiihtokeskuksen osalta

      "MCS Finland Oy on ilmoittanut Taivalkosken kunnalle 30.4.2026, että se irtisanoo Taivalkosken kunnan ja MCS Finland Oy:
      Taivalkoski
      53
      1156
    7. Mun mielestäni on tosi loukkaavaa

      Nainen, että luulet palatan typeriä, sekavia ja ilkeitä viestejä mun kirjoittamiksi. Mä en ole katkera, epätoivoinen, ra
      Ikävä
      200
      1140
    8. Mikä se viehättävin

      Asia on kaivatussasi?
      Ikävä
      63
      1021
    9. Tiedän satavarmasti ettet tule koskaan

      Uskaltamaan mitään. Ei me tulla edes näkemään koskaan.
      Ikävä
      22
      997
    10. Euroviisut ei enää niin musiikkikilpailu?

      Kappaleiden taso ei enää ole mikä sijoituksen ratkaisee.Eikö kukaan ihmettele että Israel pärjää lähes joka vuosi kisois
      Maailman menoa
      67
      990
    Aihe