2017-04-13 10 views
0

저는 파일이 필요합니다 : 하나는 곡선이라고하고, 다른 하나는 주입니다. 메인에서 나는 버튼을 누를 때마다 버튼 창을 열려고합니다. 거북이를 사용하여 커브로 무언가를 그리기 시작합니다.거북이가 Tkinter와 충돌합니다.

주 : 이것은 간단한 스크립트입니다

import tkinter 

    master = tkinter.Toplevel() 

    def callback(): 
     print("click!") 
     master.withdraw() 
     b.quit() 
     import curve 

    b = tkinter.Button(master, text="OK", command=callback) 
    b.pack() 
    tkinter.mainloop() 

곡선 :

import turtle 

    turtle.bgpic("somefile.gif") 
    #do some other stuff 
그러나

내가이 프로그램을 실행할 때 내가이 오류를 얻을 :

Exception in Tkinter callback 
Traceback (most recent call last): 
    File "C:\Python34\lib\tkinter\__init__.py", line 1482, in __call__ 
    return self.func(*args) 
    File "C:/Users/MYNAME/PycharmProjects/hilbert/main.py", line 7, in callback 
    import curve 
    File "C:\Users\MYNAME\PycharmProjects\hilbert\curve.py", line 3, in <module> 
    turtle.bgpic("images/processed.gif") 
    File "<string>", line 1, in bgpic 
    File "C:\Python34\lib\turtle.py", line 1474, in bgpic 
    self._setbgpic(self._bgpic, self._bgpics[picname]) 
    File "C:\Python34\lib\turtle.py", line 737, in _setbgpic 
    self.cv.itemconfig(item, image=image) 
    File "<string>", line 1, in itemconfig 
    File "C:\Python34\lib\tkinter\__init__.py", line 2380, in itemconfigure 
    return self._configure(('itemconfigure', tagOrId), cnf, kw) 
    File "C:\Python34\lib\tkinter\__init__.py", line 1261, in _configure 
    self.tk.call(_flatten((self._w, cmd)) + self._options(cnf)) 
_tkinter.TclError: image "pyimage2" doesn't exist 
+0

import tkinter import turtle turtle.Screen() root = tkinter.Toplevel() def callback(): print("click!") root.withdraw() b.quit() import curve b = tkinter.Button(root, text="OK", command=callback) b.pack() tkinter.mainloop() 

이 작품을,하지만 난 bgpic()없이 일하는 내 자신의 코드를 얻을 관리하고있다. 또한 : 그것은'루트 = tkinter.Tk()' 'root.withdraw()''master = tkinter.Toplevel (루트)' ''''master.protocol ("WM_DELETE_WINDOW", 루트. 파괴)'하지만 그 중 하나가 작동하지 않습니다 –

답변

0

거북이가 구현되어 있기 때문에이 킨터, 둘을 섞을 때 줄 타기를하고있어. 코드의이 재 작업은 bgpic() 전화를 포함하여, 당신이 무엇을 설명 할 것 같다

main.py 내가 stll 아무 생각하는 방법이 없습니다 curve.py

import turtle 

turtle.bgpic('somefile.gif') 

# do some other stuff 

turtle.circle(100) 

turtle.mainloop()