2017-03-23 3 views
0

ich versuche ein turtle-spiel mit der tkinter.Tk() klasse zu machen. Hiertkinter tk wiget schildkröte python

ist der Code:

from tkinter import * 
import turtle 

main = Tk(className="Castle Game") 

s=turtle.TurtleScreen(cv=main,mode='standard', colormode=1.0, delay=10) 
cover=turtle.RawTurtle(s) 

Es wird versucht folgende zurückzukehren:

>>> ================================ RESTART ================================ 
>>> 
Traceback (most recent call last): 
    File "H:\2 Computer science\Year 9\4Python\Castle.py", line 7, in <module> 
    s=turtle.TurtleScreen(cv=main,mode='standard', colormode=1.0, delay=10) 
    File "C:\Python33\lib\turtle.py", line 989, in __init__ 
    TurtleScreenBase.__init__(self, cv) 
    File "C:\Python33\lib\turtle.py", line 488, in __init__ 
    self.cv.config(scrollregion = (-w//2, -h//2, w//2, h//2)) 
    File "C:\Python33\lib\tkinter\__init__.py", line 1263, in configure 
    return self._configure('configure', cnf, kw) 
    File "C:\Python33\lib\tkinter\__init__.py", line 1254, in _configure 
self.tk.call(_flatten((self._w, cmd)) + self._options(cnf)) 
_tkinter.TclError: unknown option "-scrollregion" 
>>> 

Antwort

1

In Schildkröte Grafiken, die cv Option steht für die Leinwand, aber Sie geben es eine Tk. Deshalb gibt es einen Fehler. Um dies zu beheben, müssen Sie dies tun:

from tkinter import * 
import turtle 
root=Tk(className="Castle Game") 
main = Canvas(root) 
main.pack() 
s=turtle.TurtleScreen(cv=main,mode='standard', colormode=1.0, delay=10) 
cover=turtle.RawTurtle(s) 

von main-Canvas ändern und es auf eine Wurzel packen.