VBA et API : calcul largeur et hauteur d'une chaine de caractères
jmnpib
Messages postés4Date d'inscriptionlundi 15 août 2005StatutMembreDernière intervention17 août 2005
-
17 août 2005 à 14:57
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013
-
27 août 2005 à 19:43
Est-ce que quelqu'un sait comment utiliser les API pour calculer la largeur et la hauteur d'un chaine de caractères en fonction de la police et de la taille. Comme avec textwidth et textheight en VB mais qui n'existent ppas dans VBA
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 17 août 2005 à 16:29
Extrait de l'API Guide :
Private Type POINTAPI
X As Long
Y As Long
End Type
Private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function ExtTextOut Lib "gdi32" Alias "ExtTextOutA"
(ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal wOptions As
Long, ByVal lpRect As Any, ByVal lpString As String, ByVal nCount As
Long, lpDx As Long) As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function GetTextExtentPoint32 Lib "gdi32" Alias
"GetTextExtentPoint32A" (ByVal hdc As Long, ByVal lpsz As String, ByVal
cbString As Long, lpSize As POINTAPI) As Long
Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.Print "Click on this form," + vbCrLf + "Hold the
mouse button," + vbCrLf + "drag the mouse over another window," +
vbCrLf + "release the mouse button" + vbCrLf + "and see what happens!"
End Sub
DarK Sidious
Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
Vous n’avez pas trouvé la réponse que vous recherchez ?