incorporar event key en ciclo for y contar letras

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
arivas_2005
Mensajes: 162
Registrado: Mié Nov 16, 2011 6:01 pm

incorporar event key en ciclo for y contar letras

Mensaje por arivas_2005 »

Saludos

Necesito saber como puedo detectar la pulsación de la tecla "Retroceso" mediante código
Lo necesito hacer en un documento en el intento de calcular las letras, palabras, párrafos y páginas que se puedan digitar en un tiempo límite

Realmente no encuentro como insertar el evento keypress para que conforme se va tecleando, se contabilicen las pulsaciones de las teclas RETROCESO y SUPRIMIR y que al final se extraiga la estadistica de las pulsaciones hechas, letras, palabras, párrafos y páginas digitadas

el proceso de esperar mientras se teclea definible por minutos, se ejecuta con la macro
mientras_digita_texto_y_pasa_tiempo
luego esta al terminar el tiempo, llama la otra macro que hace los conteos para mostrarlos
contar_palabras_y_estadisticas_al_finalizar_digitado

pero no le encuentro donde poner el evento key para que cuente mientras se digita


Hace algún tiempo que estoy con la prueba y error sobre el tema y no avanzo.

Adjunto el documento con la idea codificada..
gracias de antemano por sus colaboraciones
Adjuntos
Para contar palabrasYotros.odt
(13.22 KiB) Descargado 172 veces
Libreoffice 4.7
Puppy slacko 6 y windows 7
arivas_2005
Mensajes: 162
Registrado: Mié Nov 16, 2011 6:01 pm

Re: incorporar event key en ciclo for y contar letras

Mensaje por arivas_2005 »

Saludos

Encontre algo relacionado con mi tema en
https://forum.openoffice.org/en/forum/v ... 20&t=45516

Incorporé el código en mi archivo siguiendo la forma que tiene en el fichero ejemplo del link

Y si detecta las pulsaciones, pero el contador no acumula las pulsaciones
Adjunto el archivo con las lineas de codigo agregadas para buscar la solución a mi solicitud.

En resumen, lo que busco es hacer la macro para ver si se puede determinar la rapidez de tecleado y a la vez saber si borran poco o mucho en relacion al tecleado total.
Adjuntos
Para contar palabrasYotros_2.odt
(16.17 KiB) Descargado 168 veces
Libreoffice 4.7
Puppy slacko 6 y windows 7
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: incorporar event key en ciclo for y contar letras

Mensaje por mauricio »

Solo establece las variables donde cuentas como globales:

Código: Seleccionar todo

Global nteclasBACK
Global nteclasDELETE
Al iniciar, establecelas a cero:

Código: Seleccionar todo

sub sStartXKeyHandler			
	nteclasBACK = 0
	nteclasDELETE = 0
Al finalizar muestras los totales:

Código: Seleccionar todo

sub sStopXKeyHandler
	if not IsNull(oXKeyHandler) then 'only if still running
		ThisComponent.CurrentController.removeKeyHandler(oXKeyHandler)
		oXKeyHandler = Nothing 'To know later this handler has stop.
	end If
	Call  contar_palabras_y_estadisticas_al_finalizar_digitado
end sub
pero... hay un problema, del cual ya te daras cuenta...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
arivas_2005
Mensajes: 162
Registrado: Mié Nov 16, 2011 6:01 pm

Re: incorporar event key en ciclo for y contar letras

Mensaje por arivas_2005 »

Saludos
Gracias Mauricio

Le cuento que lo llevo así ya...
En mi opinion ya lo podré usar para calcular la velocidad de escritura con el teclado.
Si tiene oportunidad de mejorar su aspecto y funcionalidad, será de gran ayuda para quienes queremos realizar esa medición

Como no pude activar el 'evento key handler' por medio de macro con el botón( y tampoco pude detener tal 'evento key handler'), se me ocurrió agregar la macro 'key .. ' con el evento "abrir documento" para ese propósito y el botoncito para arrancar el tiempo de tecleado.
También, tal como lo he logrado armar, solo sirve para una vez.

Asi que, queda pendiente hacerlo de uso para varias veces y si es posible accionar las dos macros a la vez: la del key handler y la del contador de tiempo, y otras cosas..... !

Nuevamente gracias.
Adjuntos
Para contar palabrasYotros_RAPIDEZ_TECLEADO_LISTO.odt
(16.93 KiB) Descargado 168 veces
Libreoffice 4.7
Puppy slacko 6 y windows 7
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: incorporar event key en ciclo for y contar letras

Mensaje por mauricio »

Estoy dispuesto a dedicarle algo de tiempo, pero con un lenguaje serio :lol: :lol: como Python...

Me parece muy interesante hacer una interfaz que sirva para medir el tiempo y la velocidad de tecleo del usuario.

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Responder