Page 244 - Em Học Python
P. 244
d
ef raw(self):
d
s
s
elf.canvas.move(self.id, elf.x, elf.y)
s
=
s
os elf.canvas.coords(self.id)
p
<
i
0
f os[1] = :
p
s
3
=
elf.y
i
p
s
>
f os[3] = elf.canvas_height:
elf.y 3
=
s
-
<
0
p
i
f os[0] = :
elf.x
s
=
3
i
p
f os[2] = elf.canvas_width:
s
>
=
-
elf.x 3
s
class addle
:
P
(
ef _init__ self, anvas, olor):
_
c
c
d
=
c
elf.canvas anvas
s
=
1
elf.id anvas.create_rectangle(0, , 00, 0, ill=color)
f
c
1
s
0
2
elf.canvas.move(self.id, 00, 00)
3
s
(
ef raw self):
d
d
p
ass
Code này gần như y nguyên với lớp Ball ngoại trừ việc ta gọi hàm
,
create_rectangle (thay vì gọi create_oval và ta đặt thanh đỡ ở vị trí 200, 300 (cách mép
,
)
trái 200 điểm ảnh và cách mép trên 300 điểm ảnh).
,
Tiếp, ở phần cuối code, tạo ra một đối tượng từ lớp Paddle rồi sửa vòng lặp chính để
gọi hàm draw của thanh đỡ, như thế này:
P
)
paddle addle(canvas, blue'
=
'
ball all(canvas, red')
=
'
B
1
while :
b
all.draw()
addle.draw()
p
t
k.update_idletasks()
k.update()
t
t
ime.sleep(0.01)
218 Chương 14