我开始使用tkinter创建一个简单的游戏并遇到问题。我在网上搜索但找不到答案。我的问题是我无法弄清楚如何在tkinter中居中标签。这是我的代码:
class incidencia(models.Model):
_name = 'incidencias.incidencia'
fecha_inicio = fields.Date(default=fields.Date.today, required=True)
name = fields.Char(compute='_asignar_nombre', required=True)
@api.depends('fecha_inicio')
def _asignar_nombre(self):
#¿?
如果您知道如何在tkinter中居中标签,请回答。谢谢!
答案 0 :(得分:1)
Tkinter有两个显示小部件的选项
//Removing obj from oldArray
private static JArray RemoveValue(JArray oldArray, dynamic obj)
{
List<string> temp2 = oldArray.ToObject<List<string>>();
temp2.Remove(obj);
return JArray.FromObject(temp2);
}
或grid()
使用pack()
:
在这种情况下,这可能是最好的选择 - 因为你只处理一个小部件:
默认情况下,pack()
和top
会将小部件与中心对齐。左右分别对齐左右。
这里是代码的摘录,展示了这个属性:
bottom
您也可以在底部居中对齐文字:
nameLabel = Label(welcome, text="Welcome", bg="gray", fg="white")
nameLabel.pack(side="top")
使用nameLabel = Label(welcome, text="Welcome", bg="gray", fg="white")
nameLabel.pack(side="bottom")
:
有时可能需要对齐多个小部件。您可以使用grid()
:
grid()
更新:除了窗口评论中的居中标签之外,我不知道如何自己做这件事虽然我找到了this post that seems to do what you want
答案 1 :(得分:1)
如果将单个小部件放在另一个小部件的中心,place
是最佳选择。它具有相对于另一个窗口小部件定位窗口小部件的选项(通常但不一定相对于其父窗口)。
在您的情况下,您希望标签的中心位于其父级的中心。您可以使用.5的相对X坐标,.5的相对Y坐标和&#34; center&#34;的anchor
,这意味着窗口小部件的中心位于给定的坐标处。
示例:
nameLabel.place(relx=.5, rely=.5, anchor="center")