bin neuling un komm nicht weiter

Fragen zu Tkinter.
Antworten
Dietz33
User
Beiträge: 1
Registriert: Sonntag 31. Mai 2020, 11:44

Sonntag 31. Mai 2020, 11:51

kann mir bitte jemand helfen ?
ich habe ein problem mit den widgets, bzw hintergrund des canvas bilds - es zieht sich mit , bleibt aber irgendwie klein
ich glaube das notepad ist schuld..

ich möchte das hauptfenster HEIGHT=603 WIDTH=1073 und das notepad auch .

bitte, danke!

Code: Alles auswählen


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

class App(Frame):
    def __init__(self, master):
        Frame.__init__(self, master)
        self.columnconfigure(0,weight=1)
        self.rowconfigure(0,weight=1)

        self.original = Image.open("./Pics/JTLBG.png")
        self.original2 = Image.open("./Pics/JTLBG2.png")

        self.image = ImageTk.PhotoImage(self.original)
        self.image2 = ImageTk.PhotoImage(self.original2)

        self.pack(fill=BOTH, expand=1)
        self.bind("<Configure>", self.resize)
        self.nb=ttk.Notebook(self)
        self.page1 = ttk.Frame(self)
        self.nb.add(self.page1, text="SpAce Loot Helper")
        self.page2 = ttk.Frame(self)
        self.nb.add(self.page2, text="Tab2")
        self.page3 = ttk.Frame(self)
        self.nb.add(self.page3, text="Tab3")
       # self.nb.grid()
        self.nb.pack(fill=BOTH, expand=1)

        self.display = Canvas(self.page1, bd=0, highlightthickness=0)
        self.display.create_image(0, 0, image=self.image, anchor=NW, tags="IMG")
        self.display.grid(row=0, sticky=W + E + N + S)

        self.display2 = Canvas(self.page2, bd=0, highlightthickness=0)
        self.display2.create_image(0, 0, image=self.image2, anchor=NW, tags="IMG")
        self.display2.grid(row=0, sticky=W + E + N + S)

    def resize(self, event):
        size = (event.width, event.height)
        resized = self.original.resize(size,Image.ANTIALIAS)

        resized2 = self.original2.resize(size, Image.ANTIALIAS)
        self.image = ImageTk.PhotoImage(resized)

        self.image2 = ImageTk.PhotoImage(resized2)

        self.display.delete("IMG")
        self.display.create_image(0, 0, image=self.image, anchor=NW, tags="IMG")

        self.display2.delete("IMG")
        self.display2.create_image(0, 0, image=self.image2, anchor=NW, tags="IMG")


HEIGHT=603
WIDTH=1073
root = Tk()
root.title("JTL ACE 1.0")
#root.rowconfigure(0, weight=1)
#root.columnconfigure(0, weight=1)


app = App(root)

#app.nb["height"]=603
#app.nb["width"]=1073
#app["bg"]="black"

#b1=Button(app.display,text="FGAGASDFASDFf")
#button_window=app.display.create_window(60,120,anchor=NW,window=b1)





app.mainloop()
Benutzeravatar
peterpy
User
Beiträge: 61
Registriert: Donnerstag 7. März 2013, 11:35

Dienstag 2. Juni 2020, 12:47

Willkommen Dietz33,

woher hast Du den Code? Bei mir läuft der nicht.
Der Interpreter reklamiert schon beim import von ImageTk, ich hab das Modul ImageTk nicht installiert.
Dann wieder beim import von ttk.
Das muss heissen: from tkinter import ttk

Bitte unterlasse die Sternchenimporte.
Denn wenn Du alles aus tkinter importierst, hast Du über 200 Namen im Namensraum.
Du kennst die Namen nicht und benötigst auch nur den kleinsten Teil davon.
Importiere TK as tk.
Dann sprichst Du z.B. Frame mit tk.Frame an u.s.w.
Oder importiere Tk, Frame, .....
Wenn Du dich jetzt als Neuling an die Regeln gewöhnst, fällt dir die Einhaltung später leicht.

Was für Fehlermeldungen werden bei dir ausgegeben?

Gruss
Peter
Antworten