Page 235 - Em Học Python
P. 235

Hai  dòng  cuối  của  lớp  Ball ta  dựng  tạm  hàm  draw bằng  def




                                                                        .
                           ,





               draw self)  còn  phần  thân  hàm  thì  chỉ  là  từ  khoá  pass  Lúc  này










                    (




               nó  chưa  làm  gì  hết.  Ta  sẽ  thêm  sau.








                                                   ,









                       Thế  là  đã  viết  xong  lớp  Ball  giờ  ta  sẽ  tạo  ra  một  đối  tượng

















               của  lớp  này  (còn  nhớ  không,  lớp  là  để  mô  tả  nó  có  thể  làm  được  gì,



















               còn  đối  tượng  mới  là  thứ  thực  sự  làm  những  việc  đó).  Thêm  đoạn












               code  sau  vào  cuối  file  để  tạo  ra  một  quả  bóng  màu  đỏ  nhé:



                                             )


                        B

                     =

               ball    all(canvas,  red'
                                       '






                       Em  có  thể  chạy  chương  trình  này  ngay  bằng  cách  chọn










               Run  ▶  Run  Module   Nếu  không  chạy  bằng  IDLE,  bảng  vẽ  sẽ  hiển






                                   .


               thị  lên  trong  giây  lát  rồi  biến  mất  ngay  lập  tức.  Để  tránh  việc  này,























               ra  cần  phải  tạo  một  vòng  lặp,  thường  được  gọi  là  vòng  lặp  chính  ⟨main  oop⟩ của  game.  (Bản





                                                                                       l


















               thân  trong  IDLE  cũng  có  một  vòng  lặp  chính,  nên  bảng  vẽ  mới  không  biến  mất  khi  ta  chạy














               chương  trình  ở  đây.)

















                       Vòng  lặp  chính  này  chính  là  trọng  tâm  của  game,  điều  khiển  phần  lớn  nội  dung

















               trong  game.  Vòng  lặp  chính  của  chúng  ta,  tạm  thời,  chỉ  bảo  tkinter vẽ  lại  bảng  vẽ  thôi.

























               Vòng  lặp  sẽ  lặp  đi  lặp  lại  mãi  mãi  (hoặc  cho  đến  khi  chúng  ta  đóng  cửa  sổ),  làm  tkinter





               liên  tục  vẽ  ra  màn  hình,  và  tạm  nghỉ  một  phần  trăm  giây.  Thêm  đoạn  code  sau  vào  phần
















               cuối  chương  trình:


               ball    all(canvas,  red')
                                       '


                        B
                     =


               while  :


                       1
                    k.update_idletasks()

                    t
                    t

                    k.update()
                    t

                    ime.sleep(0.01)








                                                                                  Bắt  đầu  viết  game  Bounce!           209
   230   231   232   233   234   235   236   237   238   239   240