我正在制作一个程序,用于轻松查找预订联系人。当我输入所有这些信息时,按钮将停留在窗口的左上方。我如何在屏幕中间找到它们?更好的是,我如何将它们放置在我通常想要的任何地方? (不必担心Webbrowser导入将在程序的后面提供)
import webbrowser
from tkinter import *
from tkinter import ttk
root = Tk()
root.title('GUI Booking')
root.geometry('600x400')
root.resizable(width=False, height=False)
style = ttk.Style()
style.configure("TButton",
font="TkDefaultFont",
height=20,
width=20,
padding=10)
main_frame = Frame()
main_frame.grid(row=0, columnspan=4)
# Starting Window
button_location = ttk.Button(main_frame, text='Location').grid(row=1, column=3)
button_name = ttk.Button(main_frame, text='Name').grid(row=2, column=3)
button_email = ttk.Button(main_frame, text='Email').grid(row=3, column=3)
root.mainloop()
答案 0 :(得分:0)
您可以使用行/列配置将按钮居中:http://www.effbot.org/tkinterbook/grid.htm 我已经在您的根配置下添加了它。最终,小部件的位置将取决于您使用的小部件以及通过网格管理器调整其位置。
import webbrowser
from tkinter import *
from tkinter import ttk
root = Tk()
root.title('GUI Booking')
root.geometry('600x400')
root.resizable(width=False, height=False)
root.grid_rowconfigure(0, weight=1) # Added to center buttons
root.grid_columnconfigure(0, weight=1) # Added to center buttons
style = ttk.Style()
style.configure("TButton",
font="TkDefaultFont",
height=20,
width=20,
padding=10)
main_frame = Frame()
# Starting Window
button_location = ttk.Button(main_frame, text='Location').grid(row=1, column=1)
button_name = ttk.Button(main_frame, text='Name').grid(row=2, column=1)
button_email = ttk.Button(main_frame, text='Email').grid(row=3, column=1)
main_frame.grid(row=0, column=0)
root.mainloop()
答案 1 :(得分:0)
使用.place
选项代替.grid
:
...
Button = Button(something, text='Something', command=Something)
Button.place(x=value(e.g:2), y=value(e.g:2))
...
答案 2 :(得分:0)
如果您希望他们在屏幕中间显示给我,请使用.pack
而不是.grid
。
import webbrowser
from tkinter import *
from tkinter import ttk
root = Tk()
root.title('GUI Booking')
root.geometry('600x400')
root.resizable(width=False, height=False)
style = ttk.Style()
style.configure("TButton",
font="TkDefaultFont",
height=20,
width=20,
padding=10)
main_frame=Frame()
# Starting Window
button_location = ttk.Button(main_frame, text='Location').grid()
button_name = ttk.Button(main_frame, text='Name').grid()
button_email = ttk.Button(main_frame, text='Email').grid()
main_frame.pack()
root.mainloop()
警告:请勿在同一窗口中使用.pack
和.grid
。