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

260

    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. Ikävöin sinua kokoyön!

      En halua odottaa, että voisin näyttää sinulle kuinka paljon rakastan sinua. Toivon, että uskot, että olen varsin hullun
      Ikävä
      61
      4288
    2. KALAJOEN UIMAVALVONTA

      https://www.kalajokiseutu.fi/artikkeli/ei-tulisi-mieleenkaan-jattaa-pienta-yksinaan-hiekkasarkkien-valvomattomalla-uimar
      Kalajoki
      136
      2989
    3. Jos sinä olisit pyrkimässä elämääni takaisin

      Arvelisin sen johtuvan siitä, että olisit taas polttanut jonkun sillan takanasi. Ei taida löytyä enää kyliltä naista, jo
      Tunteet
      45
      2332
    4. Kadonnut poika hukkunut lietteeseen mitä kalajoella nyt on?

      Jätelautta ajautunut merelle ja lapsi uponnut jätelautan alle?
      Kalajoki
      42
      2196
    5. Älä mahdollisesti ota itseesi

      En voinut tietää. Sitäpaitsi.. niin
      Ikävä
      24
      1873
    6. Hukkuneet pojat kalajoella pakolaisia?

      Eivät osanneet suomea nimittäin.
      Maailman menoa
      90
      1773
    7. Ota nainen yhteyttä ja tee Tikusta asiaa?

      Niin sitten minä teen Takusta asiaa.
      Ikävä
      28
      1576
    8. Joku hukkui Hyrynsalmella?

      Oliko mökkiläinen taas?
      Hyrynsalmi
      22
      1519
    9. Mitä sinä mietit

      Mies?
      Ikävä
      147
      1367
    10. Metsästysmökki

      Metsästyskortti saapui. Lisäksi metsästysmökki varata!
      Kuhmo
      31
      1198
    Aihe