home *** CD-ROM | disk | FTP | other *** search
/ Dan Appleman's Visual Bas…s Guide to the Win32 API / Dan.Applmans.Visual.Basic.5.0.Programmers.Guide.To.The.Win32.API.1997.Ziff-Davis.Press.CD / VB5PG32.mdf / vbpg32 / samples5 / ch08 / modex8b.bas < prev    next >
Encoding:
BASIC Source File  |  1996-11-27  |  3.3 KB  |  64 lines

  1. Attribute VB_Name = "modex8b"
  2. ' Ex8B example
  3. ' Copyright (c) 1996-1997 by Desaware Inc. All Rights Reserved
  4.  
  5. Public Type POINTAPI
  6.     x As Long
  7.     y As Long
  8. End Type
  9. Public Type RECT
  10.         Left As Long
  11.         Top As Long
  12.         Right As Long
  13.         Bottom As Long
  14. End Type
  15.  
  16. Public Declare Function AngleArc& Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal dwRadius As Long, ByVal eStartAngle As Single, ByVal eSweepAngle As Single)
  17. Public Declare Function MoveToEx Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, lpPoint As POINTAPI) As Long
  18. Public Declare Function CreatePatternBrush Lib "gdi32" (ByVal hBitmap As Long) As Long
  19. Public Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
  20. Public Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
  21. Public Declare Function FillRect Lib "user32" (ByVal hdc As Long, lpRect As RECT, ByVal hBrush As Long) As Long
  22. Public Declare Function GetClientRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
  23. Public Declare Function DrawEdge& Lib "user32" (ByVal hdc As Long, qrc As RECT, ByVal edge As Long, ByVal grfFlags As Long)
  24. Public Declare Function InflateRect Lib "user32" (lpRect As RECT, ByVal x As Long, ByVal y As Long) As Long
  25. Public Declare Function DrawFrameControl Lib "user32" (ByVal hdc As Long, lpRect As RECT, ByVal un1 As Long, ByVal un2 As Long) As Long
  26. Public Declare Function DrawState Lib "user32" Alias "DrawStateA" (ByVal hdc As Long, ByVal hBrush As Long, ByVal lpDrawStateProc As Long, ByVal lParam As Long, ByVal wParam As Long, ByVal n1 As Long, ByVal n2 As Long, ByVal n3 As Long, ByVal n4 As Long, ByVal un As Long) As Long
  27. Public Declare Function DrawStateByString Lib "user32" Alias "DrawStateA" (ByVal hdc As Long, ByVal hBrush As Long, ByVal lpDrawStateProc As Long, ByVal lParam As String, ByVal wParam As Long, ByVal n1 As Long, ByVal n2 As Long, ByVal n3 As Long, ByVal n4 As Long, ByVal un As Long) As Long
  28. Public Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long
  29. Public Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long
  30.  
  31. Public Const pi = 3.141578
  32. Public Const DSS_DISABLED = &H20
  33. Public Const DSS_MONO = &H80
  34. Public Const DSS_NORMAL = &H0
  35. Public Const DSS_RIGHT = &H8000
  36. Public Const DSS_UNION = &H10
  37. Public Const DST_BITMAP = &H4
  38. Public Const DST_COMPLEX = &H0
  39. Public Const DST_ICON = &H3
  40. Public Const DST_PREFIXTEXT = &H2
  41. Public Const DST_TEXT = &H1
  42.  
  43.  
  44. Public Function Callback1_cbxLLLLL(ByVal lval1 As Long, ByVal lval2 As Long, ByVal lval3 As Long, ByVal lval4 As Long, ByVal lval5 As Long) As Long
  45.     Dim usebrush&
  46.     Dim di&
  47.     Dim rc As RECT
  48.     rc.Left = 0
  49.     rc.Top = 0
  50.     rc.Right = lval4 \ 2
  51.     rc.Bottom = lval5 \ 2
  52.     ' We have to draw into the device context provided
  53.     ' Draw a green rectangle in the upper left corner
  54.     usebrush& = CreateSolidBrush(RGB(0, 255, 0))
  55.     di = FillRect(lval1, rc, usebrush)
  56.     di = DeleteObject(usebrush)
  57.     ' Just throw some text out
  58.     di = TextOut(lval1, 5, 5, "Hello", 5)
  59.     ' We don't need lparam and wParam here - so they are ignored
  60.     ' You can pass the values if you wish
  61.     Debug.Print lval2, lval3
  62. End Function
  63.  
  64.