python - 如何使用网格将小部件设置在特定位置?
问题描述
如何设置容器框架有 12 列。那么,小部件按钮可以按列正确放置在特定列中吗?在这段代码中,我尝试将 clientFrame 设置为 12 列。然后,在第 3 列位置设置注册 btn,在第 5 列位置设置 loginBtn。
root = tkinter.Tk()
root.geometry("1280x720")
clientFrame = tkinter.Frame(root)
signupBtn = tkinter.Button(clientFrame, text= "Signup")
signupBtn.grid(column= 3, row= 0)
loginBtn = tkinter.Button(clientFrame, text= "Login")
loginBtn.grid(column= 5, row=0)
clientFrame.grid(columnspan= 12)
root.mainloop()
解决方案
您发布的代码实际上确实将按钮放在了请求的行和列中。但是,空行和空列的高度或宽度为零,因此您的按钮看起来与您预期的不同。
目前尚不清楚当您有空行和列时您期望发生什么。如果您想对每列强制执行最小大小,您可以使用grid_columnconfigure
方法和minsize
属性来执行此操作。或者,您希望所有列的大小相同,您可以将uniform
所有列的属性设置为相同的值。
在以下示例中,列 0-11 都被限制为相同的宽度,因此它们将与任何列中最宽的项一样宽:
clientFrame.grid_columnconfigure(list(range(12)), uniform="equal")
如果您想要最小列宽而不是相等的列,则将列的最小宽度设置为 100 像素:
clientFrame.grid_columnconfigure(list(range(12)), minsize=100)
推荐阅读
- ios - 我们可以为 xcuitest 中的元素获取文本字体和按钮启用颜色吗
- security - 用 bcrypt 散列
- c# - 访问 SQL Server 2019 时偶尔出现随机 C# 崩溃
- jquery - 属性的jquery值
- python - 删除空格和小写列表中的所有项目
- flutter - 使用 SharedPreferences 时带有用于推送通知的后台处理程序的 MissingPluginException
- r - R 神经网络使用起始公式向列添加权重
- jquery - jquery 数组并以自定义格式显示
- python - 使用 tkinter 复选框为 folium 选择数据帧
- javascript - 如何使用 Typescript 正确设置 axios 客户端?