Определение дилины символьной строки в пикселах для заданного контекста устройства (hDC) - VB
Формулировка задачи:
вопрос такой: как?
пробовал использовать функции GetTextMetrics и GetTextExtentPoint32 и у меня не получилось
первая не заполняла структуру, а вторая тупо возвращала 0 (ноль)
Я, вероятно, сошел с ума. Хелп
Зер Бест, если кто пришлет рабочий пример с использованием одной из этих функций. Заранее спасибо.
Решение задачи: «Определение дилины символьной строки в пикселах для заданного контекста устройства (hDC)»
textual
Листинг программы
Private Type POINTAPI X As Long Y As Long End Type 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_Load() With Text1 .Text = 'Thank you, MSDN.' .SelStart = 0 .SelLength = Len(.Text) End With End Sub Private Sub Text1_Change() Dim udtTextSize As POINTAPI Dim strText As String Dim hDC As Long strText = Text1.Text hDC = GetWindowDC(Text1.hwnd) GetTextExtentPoint32 hDC, strText, Len(strText), udtTextSize Me.Caption = 'Длина строки в пикселах: ' & udtTextSize.X End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д