ImageTk in python 3?

Fragen zu Tkinter.
Antworten
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

Hey da draußen!

Gibt es eine Version von ImageTk auch in Python 3?

Code: Alles auswählen

from PIL import Image, ImageTk
Also quasi diesen Import ^^ ?

Ich habe nämlich folgenden Code:

Code: Alles auswählen

from Tkinter import *
from PIL import Image, ImageTk
import ttk

class DemoSplashScreen:
    def __init__(self, parent):
        self.parent = parent
 
        self.aturSplash()
        self.aturWindow()
 
    def aturSplash(self):
        # import image menggunakan Pillow
        self.gambar = Image.open('file.png')
        self.imgSplash = ImageTk.PhotoImage(self.gambar)
 
    def aturWindow(self):
        # ambil ukuran dari file image
        lebar, tinggi = self.gambar.size
 
        setengahLebar = (self.parent.winfo_screenwidth()-lebar)//2
        setengahTinggi = (self.parent.winfo_screenheight()-tinggi)//2
 
        # atur posisi window di tengah-tengah layar
        self.parent.geometry("%ix%i+%i+%i" %(lebar, tinggi,
                                             setengahLebar,setengahTinggi))
 
        # atur Image via Komponen Label
        Label(self.parent, image=self.imgSplash).pack()
         
if __name__ == '__main__':
    root = Tk()
 
    # menghilangkan judul dan batas frame Window
    root.overrideredirect(True)
    app = DemoSplashScreen(root)
    
    # menutup window setelah 5 detik
    root.after(6010, root.destroy)
     
    root.mainloop()
Und den würde ich gerne in Python 3 einsetzten... (aktuell 2.7 im Dokument)

Vielen Dank für eure Hilfe schonmal im voraus,
MiniDeveloper
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Es empfiehlt sich, wenn man sich bei Stackoverflow seinen Code zusammen googelt, NICHT den Code in der FRAGE zu verwenden, weil der ja ueblicherweise irgendwas NICHT macht, was er machen soll. Sondern den in der besten Antwort, bei dem in deinem Fall sogar wortwoertlich drin steht, dass er fuer Python 3 funktioniert....

https://stackoverflow.com/questions/386 ... s-finished
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

:?: Das war nur ein Beispiel :(
Den hatte ich am anfang verwendet...
Meine Frage war ob es das auch in python 3 gibt :cry:
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Habe ich doch beantwortet. Steht in dem Link, den ich angegeben habe. Code & die Angabe zu Python 3.
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

also ich habe den Code unter einem Youtube Video von 08-2014 gefunden :lol: :lol: :lol:
https://www.youtube.com/watch?v=LpTNqyIe3h8
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

Ja das ist der Code von einem Youtube Video...
Danke für eure Hilfe :)
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

Moment mal... irgendwie klappt das von stackoverflow nicht :(

Gibt es noch irgendein ImageTk in Python 3??? Ich check das nicht, bin neu :((
Sirius3
User
Beiträge: 17741
Registriert: Sonntag 21. Oktober 2012, 17:20

Was hast Du versucht? Was klappt nicht? Welche Fehlermeldung gibt es?
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

Es ist einfach ein ganz normales Tkinter Fenster und kein Splash Screen...
Benutzeravatar
__blackjack__
User
Beiträge: 13080
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

*Was* ist ein ganz normale Tkinter-Fenster? Und brauchst Du überhaupt einen Splash-Screen? Die sind dazu da um angezeigt zu werden während etwas ausgeführt wird, was die Anzeige der GUI verhindert. Die sind *nicht* dazu da um den Benutzer mit einer unnötigen Zwangspause zu nerven!
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich hab' mich mit dem Splash vertan, ich dachte die Antwort waere auch eines - aber das ist "nur" ein tk-Fenster ohne Splash. Aber dafuer mit Python3. ImageTk gibt es aber auch fuer Python3, also kannst du dein Splash programmieren.
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

Also:
Ich meine mit einem "normalen Fenster" einfach ein Fenster mit den Symbolen oben rechts, Titel, ggf. Menüleiste usw.

Ich habe mir ja einen selbst programmiert (Das war nur ein Beispiel :lol: ), aber ich hab nur eine Anleitung für python 2 mit ImageTk gefunden.

Wie heißt dieses PIL Element in Tkinter? :cry:

Also z.B.

Code: Alles auswählen

from PIL import ImageTk
(So ist es ja in python 2)...
__deets__
User
Beiträge: 14529
Registriert: Mittwoch 14. Oktober 2015, 14:29

Auch in Python 2 gibt es das nicht, da hast du das Pillow-modul selbst installiert. Und das musst du auch fuer Python3 machen. Dann gibt es PIL, und darin dann ImageTk.
MiniDeveloper
User
Beiträge: 25
Registriert: Sonntag 3. Juni 2018, 15:09

Hmmm, das verstehe ich nicht :(

Bei mir funktioniert dieser Befehl ^^

Ich benutze einen Raspberry Pi (Rasbian), welchen Befehl muss ich denn dafür im Terminal eingeben?

Ich kann ja bsp. nicht die .exe Dateien vom "Hersteller" öffnen.
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

gehe mal in deine Console und mache folgendes:
pip uninstall PIL

und danach
pip install Pillow

und dann probiere deinen Code aus

und schau dich mal hier um
http://pillow.readthedocs.io/en/5.1.x/installation.html
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Antworten