ชุมชนคนรักภาษาเบสิค - Visual Basic Community

 ลืมรหัสผ่าน
 ลงทะเบียน
ค้นหา
ดู: 3178|ตอบกลับ: 0

[VB6] การทำ ProgressBar ด้วย PictureBox Control

[คัดลอกลิงก์]

308

กระทู้

498

โพสต์

5973

เครดิต

ผู้ดูแลระบบ

ทองก้อน ทับทิมกรอบ

Rank: 9Rank: 9Rank: 9

เครดิต
5973




โค้ดชุดนี้ก็ไม่มีอะไรมากมาย แต่แฝงนัยยะของการฝึกคิดฝึกทำ และการฝึกเขียนโปรแกรม ไม่ใช่การฝึกใช้โปรแกรม โดยการนำเอา PictureBox Control มาทำเป็น ProgressBar โดยไม่ต้องไปโหลด Microsoft Common Control เข้ามา ...

มาดูโค้ดกันเถอะ ...
  1. ' / --------------------------------------------------------------------------
  2. ' / Developer : Mr.Surapon Yodsanga (Thongkorn Tubtimkrob)
  3. ' / eMail : thongkorn@hotmail.com
  4. ' / URL: http://www.g2gnet.com (Khon Kaen - Thailand)
  5. ' / Facebook: https://www.facebook.com/g2gnet (For Thailand)
  6. ' / Facebook: https://www.facebook.com/commonindy (Worldwide)
  7. ' / MORE: http://www.g2gnet.com/webboard
  8. ' /
  9. ' / Purpose: Make simple ProgressBar.
  10. ' / Microsoft Visual Basic 6.0 (SP6)
  11. ' /
  12. ' / This is open source code under @CopyLeft by Thongkorn/Common Tubtimkrob.
  13. ' / You can modify and/or distribute without to inform the developer.
  14. ' / --------------------------------------------------------------------------
  15. Option Explicit
  16. ' ไว้ทำเป็น Progress Bar นับค่า 1 - 100
  17. Dim CurrentPercent As Byte

  18. Public Function UpdateProgress(pb As Control, ByVal Percent)
  19.     Dim Num As String
  20.     If Not pb.AutoRedraw Then pb.AutoRedraw = -1
  21.     pb.Cls
  22.     pb.ScaleWidth = 100
  23.     pb.DrawMode = 10
  24.     Num = Format$(Percent, "###") + "%"
  25.     pb.CurrentX = 50 - pb.TextWidth(Num) \ 2
  26.     pb.CurrentY = (pb.ScaleHeight - pb.TextHeight(Num)) \ 2
  27.     pb.Print Num
  28.     pb.Line (0, 0)-(Percent, pb.ScaleHeight), , BF
  29.     pb.Refresh
  30. End Function

  31. Private Sub cmdExit_Click()
  32.     Unload Me
  33. End Sub

  34. Private Sub cmdProcess_Click()
  35.     Timer1.Enabled = True
  36. End Sub

  37. Private Sub Form_Load()
  38.     CurrentPercent = 0
  39.     '// Timer1
  40.     Timer1.Enabled = False
  41.     Timer1.Interval = 100   '<-- 100 millisecond.
  42. End Sub

  43. Private Sub Timer1_Timer()
  44.     CurrentPercent = CurrentPercent + 10 ' เพิ่มขึ้นทีละ 10 ไปเรื่อยๆ จนถึง 100 ก็จบการทำงาน (Timer.Enabled = False)
  45.     If CurrentPercent <= 100 Then
  46.         UpdateProgress picStatus, CurrentPercent
  47.     Else
  48.         MsgBox "สิ้นสุดกระบวนการทำงาน.", vbInformation + vbSystemModal, "ProgressBar"
  49.         Timer1.Enabled = False
  50.         CurrentPercent = 0
  51.         picStatus.Cls
  52.         'Unload Me
  53.     End If
  54. End Sub
คัดลอกไปที่คลิปบอร์ด



ดาวน์โหลดโค้ดต้นฉบับ VB6 ได้ที่นี่ ...


ขออภัย! โพสต์นี้มีไฟล์แนบหรือรูปภาพที่ไม่ได้รับอนุญาตให้คุณเข้าถึง

คุณจำเป็นต้อง ลงชื่อเข้าใช้ เพื่อดาวน์โหลดหรือดูไฟล์แนบนี้ คุณยังไม่มีบัญชีใช่ไหม? ลงทะเบียน

x
สิ่งที่ดีกว่าการให้ คือการให้แบบไม่มีที่สิ้นสุด
ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | ลงทะเบียน

รายละเอียดเครดิต

ข้อความล้วน|อุปกรณ์พกพา|ประวัติการแบน|G2GNet.com  

GMT+7, 2024-3-29 19:53 , Processed in 0.192100 second(s), 4 queries , File On.

Powered by Discuz! X3.4, Rev.62

Copyright © 2001-2020 Tencent Cloud.

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้