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

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

[VB6] การประยุกต์ใช้งาน User Controls ด้วยการทำ Scroll Control

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

320

กระทู้

512

โพสต์

6583

เครดิต

ผู้ดูแลระบบ

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

Rank: 9Rank: 9Rank: 9

เครดิต
6583



บทความนี้ไม่ได้มาสอนวิธีการทำ User Control ขึ้นมาใช้งานเองใดๆหรอกครับ แต่เป็นการแนะนำแหล่งของฟรี และโค้ดฟรีดีๆที่โปรแกรมเมอร์สายพันธุ์ VB6 ทั่วโลกเขาทำมาแจก เพื่อให้เรา
นำมาประยุกต์ใช้กับงานของเราให้ได้ซ่ะก่อน แล้วค่อยคิดนำไปพัฒนาต่อ-ยอดกันออกไปอีกทีครับ ...

อ่านข้อมูลรายละเอียด และดาวน์โหลดโค้ดต้นฉบับ Scroll Control (VB6) จากเว็บไซต์ผู้พัฒนาโดยตรง ...

Scroll หมายถึง การเลื่อนข้อความหรือภาพบนจอไปตามแนวนอน หรือแนวตั้ง เพราะบางทีภาพหรือข้อความที่ต้องการดูบนจอภาพ ไม่สามารถมองเห็นได้ทั้งหมด เพราะมีขนาดใหญ่กว่าจอภาพ ต้องค่อยๆเลื่อนดูทีละส่วน ในการเลื่อนภาพนั้น อาจจะใช้แป้น PgUp หรือ PgDn เข้าช่วย หรือจะใช้ลูกกลิ้งที่อยู่ตรงกลางเมาส์เข้าช่วยในการเลื่อนภาพก็ได้ ... (จบทฤษฎี)


เริ่มต้นด้วยการ Add User Control เข้ามา ...


การ Save User Control เอาไว้ในโปรเจค ...


แอดมินชื่นชอบในเรื่อง คุณสมบัติ Align ของ User Control ตัวนี้มาก เพราะมันสามารถยืดหด ปรับขนาดตามการย่อ/ขยายฟอร์มได้ และเราสามารถนำโค้ดไปปรับแต่งใช้งานกับ Control ตัวอื่นๆได้ในเรื่องของ Anchor เหมือนใน VB.NET ...

แอดมินจะไม่อธิบายเรื่องตัว User Control นะครับ แต่จะเป็นการนำโค้ดมาใช้งานโดยตรงเลย โดยให้ดูจาก Event หรือ การเกิดเหตุการณ์คลิ๊กที่รูป (PictureBox) จากนั้นสั่งให้มันไปทำงานอะไร (Driven) ...
  1. Option Explicit

  2. Private Declare Sub InitCommonControls Lib "comctl32" ()
  3. Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
  4. Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
  5. Dim m_hMod As Long

  6. '/ This is just to apply windows themes
  7. Private Sub Form_Initialize()
  8.     m_hMod = LoadLibrary("shell32.dll")
  9.     Call InitCommonControls
  10. End Sub

  11. Private Sub Form_Terminate()
  12.     '/ Release memory.
  13.     FreeLibrary m_hMod
  14. End Sub

  15. Private Sub Form_Load()
  16.    
  17.     Dim sDir As String
  18.     Dim i As Long
  19.     sDir = Dir(App.Path & "\Images\*.jpg")
  20.     Do While sDir <> ""
  21.         If i <> 0 Then
  22.             '/ Initialized *IMPORTANT
  23.             Load Picture1(i)
  24.             Load Picture2(i)
  25.             
  26.             '/ แนวนอน
  27.             Picture1(i).Left = Picture1(i - 1).Left + Picture1(i - 1).Width + 200
  28.             '/ แนวตั้ง
  29.             Picture2(i).Top = Picture2(i - 1).Top + Picture2(i - 1).Height + 200
  30.             
  31.             Picture1(i).Visible = True
  32.             Picture2(i).Visible = True
  33.             
  34.         End If
  35.         Picture1(i).Picture = LoadPicture(App.Path & "\Images" & sDir)
  36.         '/ เก็บชื่อไฟล์ภาพเอาไว้ใน Tag หากต้องการนำชื่อภาพไปทำประโยชน์อย่างอื่น
  37.         Picture1(i).Tag = sDir
  38.         Picture1(i).Visible = True
  39.         '/
  40.         Picture2(i).Picture = LoadPicture(App.Path & "\Images" & sDir)
  41.         Picture2(i).Tag = sDir
  42.         Picture2(i).Visible = True
  43.         '/
  44.         i = i + 1
  45.         sDir = Dir()
  46.     Loop
  47. End Sub

  48. '/ Your code for handling the event.
  49. Private Sub Picture1_Click(Index As Integer)
  50.     Select Case Index
  51.         Case 0:
  52.             MsgBox "คุณเลือกรายการภาพที่ 1(Event) ... คุณต้องการจะให้โปรแกรมไปทำอะไรดีล่ะ. (Driven)" & vbCrLf & _
  53.                 "ชื่อภาพ: " & Picture1(Index).Tag
  54.         Case 1:
  55.             MsgBox "คุณเลือกรายการภาพที่ " & Index + 1 & " (Event) ... คุณต้องการจะให้โปรแกรมไปทำอะไรดีล่ะ. (Driven)" & vbCrLf & _
  56.                 "ชื่อภาพ: " & Picture1(Index).Tag
  57.         'Case ...
  58.     End Select
  59. End Sub

  60. Private Sub Picture2_Click(Index As Integer)
  61.     Select Case Index
  62.         Case 0:
  63.             MsgBox "คุณเลือกรายการภาพที่ 1(Event) ... คุณต้องการจะให้โปรแกรมไปทำอะไรดีล่ะ. (Driven)" & vbCrLf & _
  64.                 "ชื่อภาพ: " & Picture1(Index).Tag
  65.         Case 1:
  66.             MsgBox "คุณเลือกรายการภาพที่ " & Index + 1 & " (Event) ... คุณต้องการจะให้โปรแกรมไปทำอะไรดีล่ะ. (Driven)" & vbCrLf & _
  67.                 "ชื่อภาพ: " & Picture1(Index).Tag
  68.         'Case ...
  69.     End Select
  70. End Sub
คัดลอกไปที่คลิปบอร์ด

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

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

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

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

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

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

GMT+7, 2024-11-27 23:55 , Processed in 0.187504 second(s), 4 queries , File On.

Powered by Discuz! X3.4, Rev.62

Copyright © 2001-2020 Tencent Cloud.

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