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 / samples4 / ch11 / drwtxt.bas < prev    next >
Encoding:
BASIC Source File  |  1997-02-16  |  4.8 KB  |  106 lines

  1. Attribute VB_Name = "DRWTXT"
  2. Option Explicit
  3. ' Copyright ⌐ 1997 by Desaware Inc. All Rights Reserved.
  4.  
  5.  
  6. '**********************************
  7. '**  Type Definitions:
  8.  
  9. #If Win32 Then
  10. Public Type RECT
  11.     left As Long
  12.     top As Long
  13.     right As Long
  14.     bottom As Long
  15. End Type
  16. #Else
  17. Public Type RECT
  18.     left As Integer
  19.     top As Integer
  20.     right As Integer
  21.     bottom As Integer
  22. End Type
  23.  
  24. #End If 'WIN32 Types
  25.  
  26.  
  27. '**********************************
  28. '**  Type Definitions:
  29.  
  30. #If Win32 Then
  31. Public Type SIZE
  32.     cx As Long
  33.     cy As Long
  34. End Type
  35.  
  36. #End If 'WIN32 Types
  37.  
  38. ''  Text Alignment Options
  39. Public Const TA_NOUPDATECP = 0
  40. Public Const TA_UPDATECP = 1
  41.  
  42. Public Const TA_LEFT = 0
  43. Public Const TA_RIGHT = 2
  44. Public Const TA_CENTER = 6
  45.  
  46. Public Const TA_TOP = 0
  47. Public Const TA_BOTTOM = 8
  48. Public Const TA_BASELINE = 24
  49.  
  50. '' ExtTextOut flags
  51. Public Const ETO_GRAYED = 1
  52. Public Const ETO_OPAQUE = 2
  53. Public Const ETO_CLIPPED = 4
  54.  
  55. ''  DrawText() Format Flags
  56. Public Const DT_TOP = &H0
  57. Public Const DT_LEFT = &H0
  58. Public Const DT_CENTER = &H1
  59. Public Const DT_RIGHT = &H2
  60. Public Const DT_VCENTER = &H4
  61. Public Const DT_BOTTOM = &H8
  62. Public Const DT_WORDBREAK = &H10
  63. Public Const DT_SINGLELINE = &H20
  64. Public Const DT_EXPANDTABS = &H40
  65. Public Const DT_TABSTOP = &H80
  66. Public Const DT_NOCLIP = &H100
  67. Public Const DT_EXTERNALLEADING = &H200
  68. Public Const DT_CALCRECT = &H400
  69. Public Const DT_NOPREFIX = &H800
  70. Public Const DT_INTERNAL = &H1000
  71.  
  72.  
  73. '**********************************
  74. '**  Function Declarations:
  75.  
  76. #If Win32 Then
  77. Public Declare Function DrawText& Lib "user32" Alias "DrawTextA" (ByVal hDC As Long, ByVal lpStr As String, ByVal nCount As Long, lpRect As RECT, ByVal wFormat As Long)
  78. Public Declare Function ExtTextOut& Lib "gdi32" Alias "ExtTextOutA" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal wOptions As Long, lpRect As RECT, ByVal lpString As String, ByVal nCount As Long, lpDx As Long)
  79. Public Declare Function GetTabbedTextExtent& Lib "user32" Alias "GetTabbedTextExtentA" (ByVal hDC As Long, ByVal lpString As String, ByVal nCount As Long, ByVal nTabPositions As Long, lpnTabStopPositions As Long)
  80. Public Declare Function GetTextAlign& Lib "gdi32" (ByVal hDC As Long)
  81. Public Declare Function GetTextCharacterExtra& Lib "gdi32" (ByVal hDC As Long)
  82. Public Declare Function GetTextExtentPoint32& Lib "gdi32" Alias "GetTextExtentPoint32A" (ByVal hDC As Long, ByVal lpsz As String, ByVal cbString As Long, lpSize As SIZE)
  83. Public Declare Function InflateRect& Lib "user32" (lpRect As RECT, ByVal X As Long, ByVal Y As Long)
  84. Public Declare Function SetTextAlign& Lib "gdi32" (ByVal hDC As Long, ByVal wFlags As Long)
  85. Public Declare Function SetTextColor& Lib "gdi32" (ByVal hDC As Long, ByVal crColor As Long)
  86. Public Declare Function SetTextJustification& Lib "gdi32" (ByVal hDC As Long, ByVal nBreakExtra As Long, ByVal nBreakCount As Long)
  87. Public Declare Function TabbedTextOut& Lib "user32" Alias "TabbedTextOutA" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal lpString As String, ByVal nCount As Long, ByVal nTabPositions As Long, lpnTabStopPositions As Long, ByVal nTabOrigin As Long)
  88. 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)
  89. #Else
  90. Declare Function DrawText% Lib "user" (ByVal hDC%, ByVal lpStr$, ByVal nCount%, lpRect As RECT, ByVal wFormat%)
  91. Declare Function ExtTextOut% Lib "gdi" (ByVal hDC%, ByVal X%, ByVal Y%, ByVal wOptions%, lpRect As Any, ByVal lpString$, ByVal nCount%, lpDx As Any)
  92. Declare Function ExtTextOutBynum% Lib "gdi" Alias "ExtTextOut" (ByVal hDC%, ByVal X%, ByVal Y%, ByVal wOptions%, ByVal lpRect&, ByVal lpString$, ByVal nCount%, ByVal lpDx&)
  93. Declare Function ExtTextOutByrect% Lib "gdi" Alias "ExtTextOut" (ByVal hDC%, ByVal X%, ByVal Y%, ByVal wOptions%, lpRect As RECT, ByVal lpString$, ByVal nCount%, ByVal lpDx&)
  94. Declare Function GetTabbedTextExtent& Lib "gdi" (ByVal hDC%, ByVal lpString$, ByVal nCount%, ByVal nTabPositions%, lpnTabStopPositions%)
  95. Declare Function GetTextAlign% Lib "gdi" (ByVal hDC%)
  96. Declare Function GetTextCharacterExtra% Lib "gdi" (ByVal hDC%)
  97. Declare Function GetTextExtent& Lib "gdi" (ByVal hDC%, ByVal lpString$, ByVal nCount%)
  98. Declare Sub InflateRect Lib "user" (lpRect As RECT, ByVal X%, ByVal Y%)
  99. Declare Function SetTextAlign% Lib "gdi" (ByVal hDC%, ByVal wFlags%)
  100. Declare Function SetTextColor& Lib "gdi" (ByVal hDC%, ByVal crColor&)
  101. Declare Function SetTextJustification% Lib "gdi" (ByVal hDC%, ByVal nBreakExtra%, ByVal nBreakCount%)
  102. Declare Function TabbedTextOut& Lib "user" (ByVal hDC%, ByVal X%, ByVal Y%, ByVal lpString$, ByVal nCount%, ByVal nTabPositions%, lpnTabStopPositions%, ByVal nTabOrigin%)
  103. Declare Function TextOut% Lib "gdi" (ByVal hDC%, ByVal X%, ByVal Y%, ByVal lpString$, ByVal nCount%)
  104. #End If 'WIN32
  105.  
  106.