Red de conocimiento informático - Problemas con los teléfonos móviles - Función API SendMessage en PowerBuilder[1]

Función API SendMessage en PowerBuilder[1]

Introducción

Llamar inteligentemente a la función API SendMessage en Powerbulider puede completar algunos métodos convencionales y funciones difíciles de implementar en Pb, y el uso de la función api en Powerbuilder se utilizará en el ejemplo Varios aspectos en él tienen el efecto de inspirar a otros (el siguiente código puede usar completamente la función Enviar en PowerBuilder en lugar de la función SendMessage AI). (El siguiente código puede usar completamente la función Enviar en lugar de la función SendMessage Api en PowerBuilder, porque el borrador tiene prisa y el código no ha sido probado)

Descripción de la función de la Parte 2

Descripción de la función SendMessage

Descripción

Llama a la función de ventana de la ventana y envía un mensaje a la ventana. La función no regresa a menos que se procese el mensaje. SendMessageBynum SendMessageByString es la forma de declaración de tipo seguro de la función

El valor de retorno

está determinado por la longitud del mensaje.

Lista de parámetros

Tipo y descripción del parámetro

hwnd Long El identificador de la ventana para recibir el mensaje

wMsg Long El identificador del mensaje

wParam Long depende del mensaje

lParam Any depende del mensaje

La función SendMessageBynum es la forma de declaración de tipo seguro de la función. Powerbuilder utiliza la función Enviar para encapsular la función Enviar

Prototipo de función Enviar (maneja mensaje# lowword long)

Descripción de la función Enviar

Descripción

Llame a la función de ventana de la ventana para enviar un mensaje a la ventana. La función regresa solo después de que se procesa el mensaje

Valor de retorno

El largo depende del mensaje

Lista de parámetros

Tipo y descripción de parámetro

handle Identificador largo de la ventana que recibe el mensaje

message# Identificador de mensaje largo

lowword El largo depende del mensaje

lowword Palabras largas y bajas.

lowword Mensaje largo específico

mensaje largo específico

Ejemplo de aplicación

Definir declaración de referencia de función externa

función larga SendMessage (¿larga? hwnd As Long Long wMsg long wParam long lParam) DLL de usuario de biblioteca Alias ​​​​para?SendMessageA

función long ReleaseCapture()? DLL de usuario de biblioteca

Definir variables de instancia

Largo constante LB_ITEMFROMPOINT =

Largo constante HTCAPTION =

Largo constante WM_NCLBUTTONDOWN =

Largo constante EM_GETLINE =

Largo constante EM_GETLINECOUNT =

p>

Constante larga EM_GETLINECOUNT =

Constante larga EM_GETLINE =

Constante larga TVM_SETITEMHEIGHT =

Constante larga EM_LINESCROLL =

Constante larga EM_LIMITTEXT=

Detectar la posición del elemento cuando el mouse se mueve en el cuadro de lista

Powerscript:

Escribe lo siguiente en el evento personalizado ue_mousemove (pbm_mousemove) del cuadro de lista Código

pos = unitstopixels(parent pointerx() XUnitsToPixels!) unittopixels(parent pointery() yUnitsToPixels!)*

idx = SendMessage(handle(this ) LB_ITEMFROMPOINT pos) Si idx lt ; Entonces sle_ Text = lb_ text(idx)

Encuentra elementos coincidentes en el cuadro de lista

Powerscript:

Evento de apertura de ventana lishixinzhi/Article/program/ PB/201311/24597