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

367

    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. Mitä mietit juuri nyt?

      🤔
      Ikävä
      92
      1066
    2. Aurinkoni...

      On ikävä sua ❤️
      Ikävä
      55
      732
    3. Huonoja uutisia-nyt lähtee höyrylaivat

      https://www.ita-savo.fi/ Konkurssiin meni tämäkin yritys. Raja kiinni ja venäläiset turistit puuttuvat. Täällä menee pe
      Savonlinna
      35
      614
    4. Ei näytä hyvältä

      Kyllä nyt Ähtäriä viedään vesikelkalla. Neuvotteliat untuvikkoja kaikki. Mikko tietty tapansa mukaan loikki puheenjohtaj
      Ähtäri
      39
      546
    5. Älä itke rakas.

      Tunnen sun kyyneleet silmissäni. Kaikki tulee menemään hyvin. Loppu häämöttää jo...
      Ikävä
      49
      490
    6. Jos vielä toivot...mies...

      Saisinpa jonkun merkin sinulta, jos vielä odotat 📝➡️📱 Rohkeus on mennyt jos seurustelet vaikka nykyisin. En halua häi
      Ikävä
      46
      475
    7. On ikävä sua

      Muru.
      Ikävä
      31
      469
    8. Ilahtuisin jos laittaisit viestin

      Mutta et niin tee 😔 sillä sun mielestä on mun vuoro.
      Ikävä
      34
      447
    9. Olet hurmaava

      Olet paras mies, joka on tullut vastaan. Sinussa on jotakin, mitä muissa ei ole. En vaan tiedä, mikä on oikein sinun su
      Ikävä
      14
      441
    10. Minkä haluaisit

      Nähdä kaivatultasi
      Ikävä
      38
      434
    Aihe