Frame verschwindet bei Hinzufügen von Control

Fragen zu Tkinter.
Antworten
pascalsv
User
Beiträge: 16
Registriert: Samstag 7. Januar 2006, 15:45

Hallo zusammen,

ich füge meinem Fenster ein Frame mit einer festen Größe hinzu. Alles kein Thema, bis ich diesem Frame wiederum ein Control, z.B. einen Button hinzufüge. Dann ist die voreingestellte Größe des Frames nichtig. Warum? Wie kann ich das ändern, dass der Frame seine Größe behält?

Beispiel:

Code: Alles auswählen

from Tkinter import *

def bTest_Click():
    pass

Fenster = Tk()
Fenster.title("Mail-Programm")

hauptframe = Frame(Fenster, width=300, height=300, bg="white", relief=SUNKEN)

bTest = Button(hauptframe, text="Testbutton", command=bTest_Click)

bTest.pack()

hauptframe.pack()

Fenster.mainloop()
Ich habe schon versucht, dies hinzuzufügen, ohne Erfolg:

Code: Alles auswählen

hauptframeframe.grid_forget()
hauptframe.configure(width=640,height=480)
hauptframe.grid(column=1,row=1)
Danke,

Pascal
Life is short - don't buy green bananas...
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Ein Frame ist ein Containerwidget, das immer so gross ist wie das Widget das in ihm sitzt (es kollabiert um dieses Widget).
Was Du z.B. machen kannst, ist dem Hauptfenster Fenster eine bestimmte Grösse zuweisen

Code: Alles auswählen

Fenster.geometry("300x300")
und dann dem Frame sagen, dass es diesen Raum ausfüllen soll

Code: Alles auswählen

hauptfenster.pack(fill=BOTH, expand=1)
Gruß, mawe
pascalsv
User
Beiträge: 16
Registriert: Samstag 7. Januar 2006, 15:45

Perfekt! Vielen Dank!!!

Pascal
Life is short - don't buy green bananas...
Antworten