2014-02-05 60 views
1

我能够使用tkinter在框架内绘制矩形,但是当窗口最大化时,矩形不再位于框架的左上角。如何将一个矩形放置在框架的左上角?

如何将矩形固定到框架的左上角?

这是我有:

from Tkinter import * 

master = Tk() 

f1 = Frame(height=100, bd=2, relief=RAISED) 
f1.pack(fill=X, padx=3, pady=3) 

c = Canvas(f1) 
c.create_rectangle(1,1,100,90) 
c.pack() 

mainloop() 

回答

0

使用包经理相反的,你可以使用的地方经理。你会用

f1.place(x=0,y=0) 

请参阅更换

f1.pack(fill=X, padx=3, pady=3) 

,例如,this page。当然,使用绝对定位可以使您的布局对特定的窗口尺寸非常敏感。

+0

F1的框架布局是好的,它扩展了从左上角一路。这是我需要放在左上方的三角形。 – Platypus

+0

然后你可以使用'place'来代替'pack'。 – mgkrebbs

+0

如何?这是行不通的。矩形在中间。没有rectangle.place()。 – Platypus

0

上面的代码经过几次反复,这个工作对我来说:

from Tkinter import * 

master = Tk() 

f1 = Frame(height=100, bd=2, relief=RAISED) 
f1.pack(fill=X, padx=3, pady=3) 

c = Canvas(f1) 
c.create_rectangle(1,1,100,90) 
c.pack(fill=X,padx=3, pady=3) 

mainloop() 
相关问题