Python | método place() en Tkinter

El administrador de geometría Place es el más simple de los tres administradores generales de geometría proporcionados en Tkinter. Le permite establecer explícitamente la posición y el tamaño de una ventana, ya sea en términos absolutos o relativos a otra ventana.
Puede acceder al administrador de lugares a través del place()método que está disponible para todos los widgets estándar.

Por lo general, no es una buena idea usarlo place()para diseños de ventanas y cuadros de diálogo ordinarios; es simplemente mucho trabajo hacer que las cosas funcionen como deberían. Utilizar los administradores pack()o grid()para tales fines.

Sintaxis:

widget.place(relx = 0.5, rely = 0.5, anchor = CENTER)

Nota: place() el método se puede usar tanto con grid()el método como con el pack()método.

Código #1:

# Importing tkinter module
from tkinter import * from tkinter.ttk import *
  
# creating Tk window
master = Tk()
  
# setting geometry of tk window
master.geometry("200x200")
  
# button widget
b1 = Button(master, text = "Click me !")
b1.place(relx = 1, x =-2, y = 2, anchor = NE)
  
# label widget
l = Label(master, text = "I'm a Label")
l.place(anchor = NW)
  
# button widget
b2 = Button(master, text = "GFG")
b2.place(relx = 0.5, rely = 0.5, anchor = CENTER)
  
# infinite loop which is required to
# run tkinter program infinitely
# until an interrupt occurs
mainloop()

Producción:

Cuando usamos pack()o grid()administradores, entonces es muy fácil colocar dos widgets diferentes separados entre sí, pero colocar uno dentro del otro es un poco difícil. Pero esto se puede lograr fácilmente mediante el place()método.
En el método place() , podemos usar la opción in_ para poner un widget dentro de otro.

Código #2:

# Importing tkinter module
from tkinter import * from tkinter.ttk import *
  
# creating Tk window
master = Tk()
  
# setting geometry of tk window
master.geometry("200x200")
  
# button widget
b2 = Button(master, text = "GFG")
b2.pack(fill = X, expand = True, ipady = 10)
  
# button widget
b1 = Button(master, text = "Click me !")
  
# This is where b1 is placed inside b2 with in_ option
b1.place(in_= b2, relx = 0.5, rely = 0.5, anchor = CENTER)
  
# label widget
l = Label(master, text = "I'm a Label")
l.place(anchor = NW)
  
# infinite loop which is required to
# run tkinter program infinitely
# until an interrupt occurs
mainloop()

Salida: en las imágenes a continuación, observe que un botón se coloca dentro del otro.

Publicación traducida automáticamente

Artículo escrito por sanjeev2552 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *