VBasicFacil
Principal - Enlaces - Codigo - Controles - API
Mensaje
Const WM_GETTEXTLENGTH = &HE
Plataformas
Descripcion
Envie el mensaje WM_GETTEXTLENGTH a una ventana para ver el numero de caracteres en el texto de la ventana. Este contador de caracteresno incluye el caracter nulo de terminación. En algunos casos, este mensaje puede devolver un número de caracteres superior al real, sin embargo nunca sera inferior al numero de caracteres. Tiene la misma funcionalidad que la función GetWindowTextLength.
Valor devuelto
Cuando se use SendMessage para enviar el mensaje WM_GETTEXTLENGTH, ambos parametros, wParam y lParam deben cargarse usando la expresión ByVal CLng(0).
Parametros
wParam no se usa, debe ponerse a 0.
lParam no se usa, debe ponerse a 0.
Ejemplo
|
Formulario (Contiene un ControlButton y un Timer) Option Explicit
' Programa de ejemplo de como podemos rotar el texto
' de un CommanButton. Uso un CommandButton para mostrar
' que no solo se puede cambiar el texto de la barra de
' titulo del formulario.
Private Sub Command1_Click()
Unload Me
End Sub
Private Sub Timer1_Timer()
RotarTexto Command1
End Sub
|
|
Modulo (Implementado solo por claridad, podría ir en el formulario) Option Explicit Public Declare Function SendMessage _ Lib "user32" _ Alias "SendMessageA" _ (ByVal hwnd As Long, _ ByVal wMsg As Long, _ ByVal wParam As Long, _ lParam As Any) As Long Public Const WM_GETTEXTLENGTH = &HE Public Const WM_GETTEXT = &HD Public Const WM_SETTEXT = &HC Public Sub RotarTexto(Boton As CommandButton) Dim Longitud As Long ' Longitud del texto del boton Dim Texto As String ' Texto del boton Dim slength As Long ' Longitud del contenido del texto del boton Dim retval As Long Longitud = SendMessage(Boton.hwnd, WM_GETTEXTLENGTH, ByVal CLng(0), ByVal CLng(0)) + 1 ' Obtenemos la longitud del texto. Recordar que termina en un caracter nulo. Texto = Space(Longitud) ' Preparamos Texto para recibir todos los caracters del texto retval = SendMessage(Boton.hwnd, WM_GETTEXT, ByVal Longitud, ByVal Texto) ' Pasamos el primer caracter del texto al final Texto = Mid(Texto, 2, Longitud - 2) & Left(Texto, 1) retval = SendMessage(Boton.hwnd, WM_SETTEXT, ByVal Longitud, ByVal Texto) ' Actualizamos el texto del boton ' Si se produce un error en retval tendremos un 0 End Sub |
| Descargar Codigo : WM_GETTEXT.zip |
Ultima actualización : 4 de diciembre de 2001 Copyright © 2001 Silared, s.l. correo-e : vbasicfacil@silared.com