• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Thủ thuật vui : Shape di chuyển

Các mẹo vặt linh tinh khác, không thuộc nhóm nào
Hình đại diện của người dùng
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: T.Tư 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 31 time
Liên hệ:

Thủ thuật vui : Shape di chuyển

Gửi bàigửi bởi clarkkent » T.Sáu 06/06/2008 8:42 am

Thủ thuật: Thủ thuật vui : Shape di chuyển
Tác giả: Clark Kent
Mô tả: Tạo Shape di chuyển như quả banh... :D


Chúc các bạn vui... :D

Cần có:
- 1 Timer.
- 1 CommandButton.
- 2 Shape: Shape1 và Shape2.

Mã: Chọn hết

  1. Dim direct1, direct2, left1, top1, step1h, step1v
  2. Dim direct3, direct4, left2, top2, step2h, step2v
  3.  
  4. Private Sub Command1_Click()
  5.     If Command1.Caption = "Move" Then
  6.         Command1.Caption = "Stop"
  7.     Else
  8.         Command1.Caption = "Move"
  9.     End If
  10. End Sub
  11.  
  12. Private Sub Form_Load()
  13.     Shape1.Shape = 3
  14.     Shape2.Shape = 3
  15.     Command1.Caption = "Move"
  16.     Timer1.Interval = 1
  17.     Randomize
  18.     direct1 = -1
  19.     direct2 = 1
  20.     left1 = Shape1.Left
  21.     top1 = Shape1.Top
  22.     step1h = Int(10 * Rnd) + 25
  23.     step1v = Int(10 * Rnd) + 25
  24.     direct3 = 1
  25.     direct4 = -1
  26.     left2 = Shape2.Left
  27.     top2 = Shape2.Top
  28.     step2h = Int(20 * Rnd) + 25
  29.     step2v = Int(20 * Rnd) + 25
  30. End Sub
  31.  
  32. Private Sub Timer1_Timer()
  33. If Command1.Caption = "Stop" Then
  34.     If (Shape1.Top < 0) Or (Shape1.Top > Form1.ScaleHeight - Shape1.Height) Then direct2 = -direct2
  35.     If (Shape1.Left < 0) Or (Shape1.Left > Form1.ScaleWidth - Shape1.Width) Then direct1 = -direct1
  36.     left1 = left1 + step1h * direct1
  37.     top1 = top1 + step1v * direct2
  38.     Shape1.Move left1, top1
  39.     If (Shape2.Top < 0) Or (Shape2.Top > Form1.ScaleHeight - Shape2.Height) Then direct4 = -direct4
  40.     If (Shape2.Left < 0) Or (Shape2.Left > Form1.ScaleWidth - Shape2.Width) Then direct3 = -direct3
  41.     left2 = left2 + step2h * direct3
  42.     top2 = top2 + step2v * direct4
  43.     Shape2.Move left2, top2
  44. End If
  45. End Sub


• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

Quay về “[VB] Mẹo vặt khác”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.0 khách