diff options
author | Terry Jan Reedy <tjreedy@udel.edu> | 2014-06-30 20:09:16 (GMT) |
---|---|---|
committer | Terry Jan Reedy <tjreedy@udel.edu> | 2014-06-30 20:09:16 (GMT) |
commit | f7f746a82859d94d4f7bee7842e6b28db051554a (patch) | |
tree | f6558a7b6041242d18e80d8078826a9d26669a35 /Demo/turtle/tdemo_two_canvases.py | |
parent | 04a37be9e55e8f1e6b913bd5ded14533226c13b7 (diff) | |
download | cpython-f7f746a82859d94d4f7bee7842e6b28db051554a.zip cpython-f7f746a82859d94d4f7bee7842e6b28db051554a.tar.gz cpython-f7f746a82859d94d4f7bee7842e6b28db051554a.tar.bz2 |
Issue #21882: In turtle demos, remove module scope gui and sys calls by
moving them to the module's main function.
Diffstat (limited to 'Demo/turtle/tdemo_two_canvases.py')
-rw-r--r-- | Demo/turtle/tdemo_two_canvases.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/Demo/turtle/tdemo_two_canvases.py b/Demo/turtle/tdemo_two_canvases.py new file mode 100644 index 0000000..d579876 --- /dev/null +++ b/Demo/turtle/tdemo_two_canvases.py @@ -0,0 +1,54 @@ +"""turtledemo.two_canvases + +Use TurtleScreen and RawTurtle to draw on two +distinct canvases in a separate windows. The +new window must be separately closed in +addition to pressing the STOP button. +""" + +from turtle import TurtleScreen, RawTurtle, TK + +def main(): + root = TK.Tk() + cv1 = TK.Canvas(root, width=300, height=200, bg="#ddffff") + cv2 = TK.Canvas(root, width=300, height=200, bg="#ffeeee") + cv1.pack() + cv2.pack() + + s1 = TurtleScreen(cv1) + s1.bgcolor(0.85, 0.85, 1) + s2 = TurtleScreen(cv2) + s2.bgcolor(1, 0.85, 0.85) + + p = RawTurtle(s1) + q = RawTurtle(s2) + + p.color("red", (1, 0.85, 0.85)) + p.width(3) + q.color("blue", (0.85, 0.85, 1)) + q.width(3) + + for t in p,q: + t.shape("turtle") + t.lt(36) + + q.lt(180) + + for t in p, q: + t.begin_fill() + for i in range(5): + for t in p, q: + t.fd(50) + t.lt(72) + for t in p,q: + t.end_fill() + t.lt(54) + t.pu() + t.bk(50) + + return "EVENTLOOP" + + +if __name__ == '__main__': + main() + TK.mainloop() # keep window open until user closes it |