Wie kann ich button Ausrichten (Python)?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Du kannst dir das grid-Layout so vorstellen, als wenn du eine Tabelle hättest, wo in jede Zelle ein Steuerelement reinkommt. Die Spaltenbreiten werden also immer an das größte Element angepasst. Da du für den div_btn und den square_btn eine andere Breite, als für alle anderen angegeben hast, wird die Spalte an die beiden Buttons angepasst und es entsteht die Lücke. Wenn du die beiden auch auf Breite 10 setzt, sieht es gut aus.

Ich denke mal, du willst die beiden Buttons unter den Zahlen haben und so breit, wie zwei Zahlenbuttons. Dafür nimmst du am besten bei der Erstellung die width raus, damit die Breite automatisch berechnet wird und fügst dann beim grid die parameter 'columnspan=2' und 'sticky="we" ' hinzu.

div_btn = Button(root, text='/', command=div_btn_press, activebackground='#3a3b3c', background='#2a2b2c', fg='#7a7b7c', height='3')
square_btn = Button(root, text='^', command=square_btn_press, activebackground='#3a3b3c', background='#2a2b2c', fg='#7a7b7c', height='3')

...

div_btn.grid(row=3, column=0, pady=0, padx=0, columnspan = 2, sticky = "we")
square_btn.grid(row=3, column=2, pady=0, padx=0, columnspan = 2, sticky = "we")