expand: Felder in Frame anpassen

Fragen zu Tkinter.
Antworten
dh233
User
Beiträge: 37
Registriert: Samstag 8. Juli 2006, 08:26

Sonntag 16. Juli 2006, 11:25

Ich habe folgendes Problem:

In einem Frame sind 3 Text-Felder, die mittels width eine vorgegebenen Größe haben.

Das root-Window wird mit einer Größe von 800x600 erzeugt. Wenn ich nun das Fenster maximiere, passt sich der Frame an die aktuelle Größe des root-Fensters an (da ich expand="yes" benutze).

Nun will ich allerdings die 3 Text-Felder in diesem Frame auch so anpassen, dass sie im Verhältnis, so wie vorher das Frame ausfüllen.

Weiß jemand Rat??

lG

dh233
pyStyler
User
Beiträge: 311
Registriert: Montag 12. Juni 2006, 14:24

Sonntag 16. Juli 2006, 11:47

Hallo,
vielleicht hilft dir das weiter .

Code: Alles auswählen

from Tkinter import *

class Fenster : 
	def __init__(self):
		self.root = Tk()
		self.root.geometry('800x600+250+250')
		self.frame_1=Frame(master=self.root)
		
		self.text1 = Text(master=self.frame_1, width=40, height=25)
		self.text2 = Text(master=self.frame_1, width=40, height=25)
		self.text3 = Text(master=self.frame_1, width=40, height=25)
		
		self.layout()
		
		self.root.mainloop()
		
	def layout(self):
		self.frame_1.pack(expand=YES, fill=BOTH)
		self.text1.pack(side=LEFT, expand=YES, fill=BOTH)
		self.text2.pack(side=LEFT, expand=YES,fill=BOTH) 
		self.text3.pack(side=LEFT, expand=YES,fill=BOTH )
		
Fenster()

gruss
pyStyler
dh233
User
Beiträge: 37
Registriert: Samstag 8. Juli 2006, 08:26

Sonntag 16. Juli 2006, 12:55

Danke, das war die Lösung!

Das mit expand hatte ich ja schon, was noch gefehlt hat, war das "fill='both'" in den Textfeldern.

dh233
Antworten