格式标签TKinter python 2.7

2024-09-29 19:18:55 发布

您现在位置:Python中文网/ 问答频道 /正文

from Tkinter import *
import sys
sys.path.append("/Users/bry/Documents/Python/proj")
import stack

window = Tk()
colors=["gold","pink","blue","red","orange","purple","teal","green","yellow","violet","black","silver","white"]
firstGame = stack.blockWorldGame()

window.title("World Block Problem Simulator")
width_value = window.winfo_screenwidth()
height_value = window.winfo_screenheight()
window.geometry("%dx%d+0+0"%(width_value,height_value))

headerFrame = Frame(window)
headerFrame.pack()
headerLabel = Label(headerFrame , text="World Block Simulator!",fg="red",font="times 50 bold italic underline")
headerLabel.pack()
startingFrame = Frame(window)
startingFrame.pack()
startingProgramLabel = Label(startingFrame, text="Starting World Block State" , font="times 20 ")
startingProgramLabel.pack()
FrameContent = Frame(window)
FrameContent.pack()
for array in range([[A],[B,C],[D,E]]):
    frame = Frame(FrameContent)
    frame.pack(side=LEFT,expand=False)
    for block in range(len(firstGame.board[array])):#putting blocks in the same stack to the same frame
        blockLabel = Label(frame,text=firstGame.board[array][block],bg=colors[array],width=30,height=3)
        blockLabel.pack()

window.mainloop()

基本上通过这段代码,我试图反映董事会的状态,因为我解决了世界块的问题,但我有一些问题,表示在图形用户界面上的正确格式的块

在运行这组代码时,我将得到A、BC、DE的结果。但是块不会反映在B的同一位置,而是浮动在B和C的中间

有人能告诉我如何使A与B和D相一致吗 enter image description here


Tags: importworldvaluestackwindowwidthblockarray
1条回答
网友
1楼 · 发布于 2024-09-29 19:18:55

您需要将blockLabel从下到上打包到frame内,如下所示:

for array in range([[A],[B,C],[D,E]]):
    frame = Frame(FrameContent)
    frame.pack(side=LEFT,fill=Y) # added fill=Y
    for block in range(len(firstGame.board[array])):
        blockLabel = Label(frame,text=firstGame.board[array][block],bg=colors[array],width=30,height=3)
        blockLabel.pack(side=BOTTOM) # added side=BOTTOM

相关问题 更多 >

    热门问题