0
Я пытался добавить перетаскиваемый объект окна в холст tkinter. Он работал, когда не было функции obj, но я хочу, чтобы она была там для определенных целей. Теперь, когда я пытаюсь это сделать, на холсте не появляется кнопка.Объект Tkinter Canvas не отображается
from tkinter import *
import app
def obj(can,text):
b1 = "up"
xold, yold = None, None
def main():
global aaa
global frame
global text
global drawing_area
drawing_area = can
drawing_area.create_window(50,50,tags='aaa',window=text)
text.bind("<Motion>", motion)
text.bind("<ButtonPress-1>", b1down)
text.bind("<ButtonRelease-1>", b1up)
def b1down(event):
global b1
b1 = "down"
def b1up(event):
global b1, xold, yold
b1 = "up"
xold = None
yold = None
def motion(event):
global frame
global aaa
global text
global drawing_area
if b1 == "down":
global xold, yold
if xold is not None and yold is not None:
drawing_area.move('aaa',event.x,event.y)
xold = event.x
yold = event.y
root = Tk()
drawing_area = Canvas(root,height=500,width=700,bg='Blue')
text=Button(drawing_area,text='Test')
drawing_area.pack()
if __name__ == "__main__":
obj(drawing_area,text)
Вы пробовали что-то так же просто, как добавить несколько операторов печати, чтобы проверить, вызваны ли функции, которые вы вызываете _think_, _actually_? –