python - How to align entry and label in the same row within a scrollable frame? -
my code using vertical scrolled frame (from here). "name:ryan", , entry box not aligned in same row. wanted align entry box , label on same column, , messed around pack()
method not able fix it.
if __name__ == "__main__": class sampleapp(tk): def __init__(self, *args, **kwargs): root = tk.__init__(self, *args, **kwargs) self.label = label(text="choose info exclude (if any) on \n left." "write number of tags should \n associated information on right.") self.label.pack() self.frame = verticalscrolledframe(root) self.frame.pack(side=left) self.frame2=verticalscrolledframe(root) self.frame2.pack() buttons = [] resource=[] in range(10): buttons.append(checkbutton(self.frame.interior, text=str(i)+". "+ "button" )) buttons[-1].pack() label=[] in range(10): resource.append(entry(self.frame2.interior, width=3)) label.append(label(self.frame2.interior,text="name: ryan")) label[-1].pack() resource[-1].pack() app = sampleapp() app.mainloop()
output:
if want lay things out in grid, best choice use grid
rather pack
.
for example:
self.frame2.interior.grid_columnconfigure(1, weight=1) in range(10): resource.append(entry(self.frame2.interior, width=3)) label.append(label(self.frame2.interior,text="name: ryan")) label[-1].grid(row=i, column=0, sticky="e") resource[-1].grid(row=i, column=1, sticky="ew")
Comments
Post a Comment