用tkinter对齐按钮和标签

时间:2019-06-17 11:16:52

标签: python python-3.x tkinter

我正在制作一个程序,以从名为'osu!'的游戏中的GUI中显示用户数据,以练习制作GUI和访问API(以及处理数据库和模块之间的数据,但这在此不相关)。

我有一个for循环,可以在所有非菜单帧的左上方放置一个后退按钮。这些按钮位于第0列和第0行。

现在我开始填写框架的内容,我发现列的宽度与最宽的行的宽度相同,现在的问题是列0中的任何内容使列变宽比按钮更向左移动。

本质上,我想问的是如何证明其栏中的按钮合理。

此外,其下面的标签也在此列的中心。我希望我对按钮所做的一切,都可以对标签进行处理,并同时修复两者。

这就是我要看的内容:
Here's what I'm looking at

以下是创建后退按钮的代码:

    self.backButtons = {}
    for frame in self.frames:
        if frame != 'Menu':
            self.backButtons[frame] = tk.Button(self.frames[frame], command = lambda: self.raiseFrame('Menu'), text = '< - - -', bg='black', fg = 'white', width=20, height=5)
            self.backButtons[frame].grid(row = 0, column = 0)

这里是制作标签的地方:

self.tableColumns = {
        'Username':self.handle,
        'Performace Points':'{0}pp'.format(round(float(self.stats['pp_raw']),2)),
        'Global Rank':'#{0}'.format(self.stats['pp_rank']),
        'Country Rank':'#{0}'.format(self.stats['pp_country_rank']),
        'Accuracy':'{0}%'.format(round(float(self.stats['accuracy']),2),'%'),
        'Highest PP Play':'{0}pp'.format(round(float(self.topPlay),2)),
        'Playcount':self.stats['playcount'],
        'Time Since Joined':secondConversion(self.stats['join_date'])}

    index = 0
    for i in self.tableColumns:

        self.label = tk.Label(self.statFrame, text = ('{0}: {1}'.format(i, self.tableColumns[i])), fg = 'white', bg = 'gray', font=("Verdana", 16))
        self.label.grid(row = index+3,column = 0)
        index += 1

我尝试将justify = 'left'anchor = 'w'添加到按钮和标签的创建行中,这是通常的建议,但是没有用。也许我将其添加到错误的位置或做错了。

0 个答案:

没有答案