tkSimpleDialog pycharm

时间:2017-05-14 20:40:25

标签: python-2.7 tkinter

我正在编写一个学校项目,并试图在我的代码中使用tkinter,但它一直出现错误。我正在使用mac笔记本电脑和pycharm接口

Traceback (most recent call last):
  File "/Users/-----/Desktop/python/Tkinter turtle obstacle.py", line 20, in <module>
    color1()#does it automatically
  File "/Users/-----/Desktop/python/Tkinter turtle obstacle.py", line 8, in color1
    ac1 = Sd("Color Selector", 'Enter the color of the turtle')
TypeError: 'module' object is not callable

这是我的代码,它只是一个简单的项目来测试它,然后我钻研到最后一个,但我无法让它工作,有人可以告诉我它有什么问题:

import turtle              # 1.  import the modules
import random
import Tkinter as tk
import tkSimpleDialog as Sd
def color1():
    ac1 = Sd("Color Selector", 'Enter the color of the turtle')
    steve.color(ac1)
    print(5)
def color2():
    ac2 = Sd("Color Selector", 'Enter the color of the obstacle')
    sam.color(ac2)
root = tk.Tk()
wn = turtle.Screen()       # 2.  Create a screen
wn.bgcolor('white')

steve = turtle.Turtle()    # 3.  Create two turtles
sam = turtle.Turtle()
color1()#does it automatically
color2()
red = tk.Button(root, text = "Enter String", command = color1)#this puts it on a button click
blue = tk.Button(root, text = "Enter String", command = color2)
red.grid(row=0,column=0)
blue.grid(row=1,column=0)
steve.shape('turtle')
sam.shape('circle')

steve.speed(1)
sam.speed(1)
steve.pensize(5)
sam.pensize(25)
sam.penup()
sam.pendown()
steve.penup()

steve.goto(-300,0)
sam.goto(0,0)

b = True
while b is True:
    steve.pendown()
    steve.forward(20)
    if steve.xcor() == sam.xcor() -40:
        steve.left(90)
        steve.forward(30)
        steve.right(90)
    if steve.xcor() == sam.xcor() +40:
        steve.right(90)
        steve.forward(30)
        steve.left(90)
    if steve.xcor() == 200:
        steve.write('Obstacle Avoided', font=('Arial', 20, "bold"))
        break

wn.exitonclick()

1 个答案:

答案 0 :(得分:1)

tkSimpleDialog是一个模块,而不是一个类。 您可能希望在此模块中创建一个Class实例。

查找模块中的Classes并使用正确的Class创建实例。