
Ich habe vor 2 Tagen angefangen mit Python zu programmieren und kann gar nicht mehr aufhören, deswegen habe ich gedacht versuche ich mich doch einmal an tkinter. Nun stoße ich auf die ersten Probleme... und ich finde keinen Fix dafür.
Das erste Problem ist leicht erklärt: Der Scroll im Canvas funktioniert 0, einfach gar nicht.
Das zweite Problem ist etwas schwerer zu erklären, deswegen würde ich euch bitten vllt den Code in eurer IDE einzufügen und es einfach mal laufen zu lassen... Wenn man öfters auf den Add Button klickt, werden ja logischerweise mehrere "Lines" von Checkboxen und Text hinzugefügt. Allerdings desto öfter man klickt, desto weiter sind die von einander verschoben... (Bild)
Bitte um Hilfe!
Mein Code:
Code: Alles auswählen
import tkinter as tk
import tkinter.font as tkfont
mainWin = tk.Tk()
mainWin.title("ToDo List by Ezequiel")
mainWin.geometry("650x300")
todoFont = tkfont.Font(family="Helvetica", size = 12)
canvas = tk.Canvas(mainWin, scrollregion=(0,0,650,300), height = 650, width = 300)
scrollbar = tk.Scrollbar(mainWin,command= canvas.yview)
canvas.pack(side = "left")
scrollbar.pack(side = "right", fill = "y")
canvas.config(yscrollcommand=scrollbar.set)
canvas.config(yscrollincrement="2")
textFrame = tk.Frame(canvas)
textFrame.pack(side = "right")
checkFrame = tk.Frame(canvas)
checkFrame.pack(side = "left")
def addText():
textB = tk.Text(textFrame, width=60, height=1, font=todoFont, bd=1,
highlightbackground="steel blue", highlightcolor="light sky blue")
textB.pack(side="bottom", pady=10)
def addCheck():
checkB = tk.Checkbutton(checkFrame)
checkB.pack(side="bottom", pady=10)
def addTodo():
addText()
addCheck()
addB = tk.Button(mainWin, text= "Add ToDo", command = addTodo)
addB.place(x = 540,y = 245)
mainWin.mainloop()