2013-08-05 17 views
5

Ben ettik aşağıdaki OptionMenu:boyutlandırma Tkinter OptionMenu düğmesine kaçınmak

self.textoprioridad = Label(self.frameTwo, text = "Prioridad: ", justify="center") 
self.textoprioridad.grid(row=n, column=4) 
var2 = StringVar() 
menu2 = OptionMenu(self.frameTwo, var2, "Primera pieza", "Esta semana", "Normal", "Baja") 
menu2.grid(row=n, column=5, ipadx=10) 
var2.set("Primera pieza") 
self.optionmenus_prioridad.append((menu2, var2)) 

böyle bir şey gösteriyor:

enter image description here

şey olduğunu ben listeden Normal seçerseniz, düğmesi yeniden boyutlandırılır ve daha küçük yapar: enter image description here

OptionMenu düğmesini ilk boyutta tutmanın herhangi bir yolu bu gibi: enter image description here

Önceden teşekkürler.

cevap

6

config(width=desired-width) tarafından yapılan genişlik belirtin:

menu2.configure(width=20) 

Bir diğer çözüm, widget "çubuk" zorunda olduğu:

menu2.config(width=20) 
3

bir çözüm width özelliği belirterek widget'a belirli bir boyut vermek konteynerlerinin kenarları:

menu2.grid(row=n, column=5, ipadx=10, sticky="ew") 

d seçeneği, widget'lar yine de yeniden boyutlandırabilir, ancak içerdikleri sütunun boyutuyla kısıtlanırlar. Biri yeniden boyutlandırırsa, yeniden boyutlandırılır ve her zaman boyut bakımından düzgün olmaları garanti edilir. Olması nasıl geniş ihtiyaçlarına bilmesi

3

grid yönteminde bir sticky belirtin:

button.grid(sticky="WE") 

Bu yöntem grid yönteminde bir takım width belirterek daha iyidir bu demektir çünkü biliyim hep seveceğim sütunun uzunluğunu uzatmak.

sticky, widget'ın nereye yapışacağını gösteren bir anahtardır. Widget'tan sticky='W' diyorsanız, sütunun soluna yapışacaktır. EW yapılarak, sağa ve sola yapışır ve bu nedenle kendiliğinden kolonun uzunluğuna gerilir. NOT: Kuzey Güney Doğu Batı'sı

+0

Çok daha iyi bir yol ... * sonra ne olacak? * Hatırlayın, cevaplar onları gördüğünüz sırada görünmeyebilir, bu yüzden başka bir cevaba atıfta bulunursanız, daha spesifik olmanız gerekiyor. –