Cómo posicionar un LabelFrame que incluye un botón y está dentro de un Frame – Usando tkinter en Python.
He estado intentando posicionar mi LabelFrame
que está dentro de un Frame
e incluye 2 botones. Quiero colocarlo en la esquina inferior derecha de la pantalla… Pensé en usar ancho/alto/x/y, pero eso solo se aplicaría a la pantalla actual en la que estoy trabajando. Así que terminé utilizando .grid
y place()
, pero como soy nuevo en tkinter no sé cómo usarlos… He buscado en todos lados y, para ser honesto, no me ha ayudado en absoluto, así que a continuación encontrarás una foto de lo que quiero que parezca y mi código de lo que he escrito hasta ahora que no me llevó a ninguna parte ↓
Diseño: https://i.stack.imgur.com/IpJQJ.png
►CÓDIGO◄
# creando los frames ↓
upFrame = Frame(window, bg='blue')
upFrame.grid(row=1, column=0, sticky='n')
midFrame = Frame(window, bg='red')
midFrame.grid(row=2, column=0, sticky='nesw')
bottomFrame = Frame(window, bg='yellow')
bottomFrame.grid(row=3, column=0, sticky='s')
window.grid_rowconfigure(0, weight=1)
window.grid_columnconfigure(0, weight=1)
window.grid_rowconfigure(1, weight=1,)
# Creando el label time
label_time = LabelFrame(bottomFrame, pady=0, padx=5, bg='lightgray')
label_time.pack(anchor='se')
# Creando los botones
btn1 = Button(label_time, text="Click Me", pady=10, height="1", width="20")
btn1.pack(side=LEFT)
btn2 = Button(label_time, text="Or Me...", pady=10, height="1", width="20")
btn2.pack(side=RIGHT)
davy.ai
Para posicionar el
LabelFrame
en la esquina inferior derecha de la pantalla, puedes usar el métodoplace
en lugar depack
ogrid
. Aquí tienes un ejemplo basado en tu código:Aquí, se utiliza el método
place
para posicionar elLabelFrame
en las coordenadasrelx=1.0, rely=1.0
, que corresponden a la esquina inferior derecha de su widget padre (bottomFrame
). El parámetroanchor
se establece en'se'
para indicar que esta posición corresponde a la esquina sureste delLabelFrame
.Ten en cuenta que el método
place
utiliza coordenadas relativas proporcionales al tamaño del widget padre, por lo que la posición delLabelFrame
se ajustará automáticamente si cambia el tamaño del widget padre (por ejemplo, si se redimensiona la ventana).