Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用tkinter对齐按钮和标签_Python_Python 3.x_Tkinter - Fatal编程技术网

Python 使用tkinter对齐按钮和标签

Python 使用tkinter对齐按钮和标签,python,python-3.x,tkinter,Python,Python 3.x,Tkinter,我正在制作一个程序,在名为“osu”的游戏的GUI中显示用户数据来练习制作GUI和访问API(以及在数据库和模块之间处理数据,但这在这里并不相关) 我有一个for循环,可以在菜单之外的所有帧的左上角放置一个back按钮。这些按钮位于第0列和第0行 现在我已经开始填充框架的内容,我注意到列的宽度与最宽行的宽度相同,现在的问题是列0中任何使列比按钮宽的内容都会向左移动 本质上,我是在问如何在它的列中证明一个按钮是正确的 此外,它下面的标签也位于该列的中心。我希望无论我对按钮做了什么,我都能对标签做些

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

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

现在我已经开始填充框架的内容,我注意到列的宽度与最宽行的宽度相同,现在的问题是列0中任何使列比按钮宽的内容都会向左移动

本质上,我是在问如何在它的列中证明一个按钮是正确的

此外,它下面的标签也位于该列的中心。我希望无论我对按钮做了什么,我都能对标签做些什么,并将两者都修复

以下是我所看到的:

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

    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)

我已经尝试将
justify='left'
anchor='w'
添加到按钮和标签的创建行,这是通常建议的,但不起作用。可能是我把它添加到了错误的位置或做了错误的操作。

sticky=tk.W
添加到
网格(…)
。谢谢!这起作用了。我以前尝试过使用sticky,但在w之前没有使用“tk”。这导致了一个错误。我更喜欢在sticky和其他大多数可以使用
tk.
或字符串的地方使用string方法。这样,代码总是与
import as tk
import*
一起使用。因此,您也可以使用
sticky='w'
获得相同的结果。将
sticky=tk.w
添加到
网格(…)
。谢谢!这起作用了。我以前尝试过使用sticky,但在w之前没有使用“tk”。这导致了一个错误。我更喜欢在sticky和其他大多数可以使用
tk.
或字符串的地方使用string方法。这样,代码总是与
import as tk
import*
一起使用。因此,您也可以使用
sticky='w'
获得相同的结果。
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