我正在制作一个程序,以从名为'osu!'
的游戏中的GUI中显示用户数据,以练习制作GUI和访问API(以及处理数据库和模块之间的数据,但这在此不相关)。
我有一个for循环,可以在所有非菜单帧的左上方放置一个后退按钮。这些按钮位于第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)
这里是制作标签的地方:
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'
添加到按钮和标签的创建行中,这是通常的建议,但是没有用。也许我将其添加到错误的位置或做错了。