Saltar al contenido principal

Firmas de las funciones integradas

Cada función integrada, agrupada por área. Cada línea muestra los nombres y tipos de los parámetros, en orden, y el tipo que devuelve. Simple marca las funciones integradas que ofrece el modo Simple de la interfaz de configuración. Ejemplos filtra la biblioteca de ejemplos para mostrar solo los scripts que llaman a esa función integrada. La información sobre herramientas de autocompletado del editor muestra las mismas firmas.

AutoHotkey​

AutoHotkeyExecuteScript​

AutoHotkeyExecuteScript(script: Text) → Integer · Simple

Ejecuta código de AutoHotkey v2 con el programa AutoHotkey establecido en la configuración y espera hasta que termine. El contexto del disparador se pasa como variables, y las líneas de salida se imprimen con el prefijo AHK:.

Parámetros

  • script: Text — El texto del script de AutoHotkey v2 que se ejecutará. Detener la acción termina el proceso de AutoHotkey.

Devuelve

El código de salida de AutoHotkey, o -1 si la compatibilidad con AutoHotkey está desactivada, la ruta de su programa no está establecida o no se encuentra, o el programa no pudo iniciarse.

1 ejemplo: Pasar el trabajo a AutoHotkey

Capture​

CaptureSaveRegion​

CaptureSaveRegion(fileName: Text, x: Integer, y: Integer, width: Integer, height: Integer) → Bool

Captura un rectángulo de la pantalla y lo guarda como archivo de imagen. Primero quita de la pantalla el trazo del gesto y la sugerencia de esta aplicación, y espera hasta 250 milisegundos para ello.

Parámetros

  • fileName: Text — Ruta del archivo de imagen que se escribirá. Su extensión (.bmp, .png, .jpg o .jpeg) determina el formato. Un archivo existente se sobrescribe; las carpetas que faltan no se crean.
  • x: Integer — Borde izquierdo del rectángulo, en píxeles de pantalla.
  • y: Integer — Borde superior del rectángulo, en píxeles de pantalla.
  • width: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • height: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.

Devuelve

true si se escribió el archivo de imagen; false si width o height no es positivo, la captura falló o no se pudo escribir el archivo. Un fileName que no termine en .bmp, .png, .jpg o .jpeg detiene el script con un error.

1 ejemplo: Capturar el área que encerró en un círculo

CaptureShowImage​

CaptureShowImage(fileName: Text) → Bool

Muestra un archivo de imagen a su tamaño original en una ventana de vista previa sin bordes y siempre visible, centrada en el monitor que está bajo el cursor. Arrástrela para moverla, haga doble clic para cerrarla o clic con el botón secundario para Copiar, Guardar y Cerrar.

Parámetros

  • fileName: Text — Ruta del archivo .bmp, .png, .jpg o .jpeg que se mostrará.

Devuelve

true si la imagen se cargó y su ventana de vista previa se está abriendo; false si el archivo no existe o no es una imagen legible. Un fileName que no termine en .bmp, .png, .jpg o .jpeg detiene el script con un error.

CaptureShowRegion​

CaptureShowRegion(x: Integer, y: Integer, width: Integer, height: Integer) → Bool

Captura un rectángulo de la pantalla y muestra la copia en una ventana de vista previa sin bordes y siempre visible, colocada exactamente sobre esa área. Primero quita el trazo del gesto y la sugerencia de esta aplicación, y espera hasta 250 milisegundos.

Parámetros

  • x: Integer — Borde izquierdo del rectángulo, en píxeles de pantalla.
  • y: Integer — Borde superior del rectángulo, en píxeles de pantalla.
  • width: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • height: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.

Devuelve

true si la captura se realizó correctamente y su ventana de vista previa se está abriendo; false si width o height no es positivo o no se pudo capturar la pantalla.

Clipboard​

ClipboardClear​

ClipboardClear() → Bool

Vacía el portapapeles: quita el texto, las imágenes y cualquier otro formato, sin poner nada nuevo en él.

Parámetros

Sin parámetros.

Devuelve

true si se vació el portapapeles; false si otro programa mantuvo ocupado el portapapeles.

1 ejemplo: Pasar a mayúsculas el texto seleccionado

ClipboardCopySelection​

ClipboardCopySelection(timeoutMs: Integer) → Text · Simple

Envía Ctrl+C a la ventana activa y devuelve el texto copiado; antes espera a que se suelten las teclas Ctrl, Shift, Alt y Windows. La copia reemplaza el portapapeles; use ClipboardSave y ClipboardRestore para conservarlo.

Parámetros

  • timeoutMs: Integer — Tiempo total de espera para que se suelten las teclas y llegue la copia, en milisegundos, de 0 a 60000. Los valores mayores cuentan como 60000. 1000 es adecuado para la mayoría de los programas.

Devuelve

El texto copiado, o texto vacío si las teclas siguieron presionadas, no se copió nada (no hay selección) o la copia no contiene texto antes de que se agote timeoutMs.

1 ejemplo: Buscar en la web el texto seleccionado

ClipboardGetHtml​

ClipboardGetHtml() → Text

Devuelve el HTML del portapapeles, como el que coloca un explorador cuando se copia parte de una página web.

Parámetros

Sin parámetros.

Devuelve

El fragmento HTML copiado sin el encabezado HTML del portapapeles, o texto vacío si el portapapeles no contiene HTML o está ocupado.

ClipboardGetRtf​

ClipboardGetRtf() → Text

Devuelve el texto enriquecido (RTF) del portapapeles, como el que coloca un procesador de textos cuando se copia texto con formato.

Parámetros

Sin parámetros.

Devuelve

El marcado RTF como texto, o texto vacío si el portapapeles no contiene RTF o está ocupado.

ClipboardGetSequenceNumber​

ClipboardGetSequenceNumber() → Integer

Devuelve un número que Windows cambia cada vez que cambia el contenido del portapapeles. Léalo antes de algo que deba copiar y luego compárelo para saber que la copia ya llegó.

Parámetros

Sin parámetros.

Devuelve

El número de secuencia actual del portapapeles. Solo importa que el número cambie, no su valor en sí.

ClipboardGetText​

ClipboardGetText() → Text · Simple

Devuelve el texto sin formato que hay actualmente en el portapapeles. Se omiten el formato, las imágenes y los archivos del portapapeles.

Parámetros

Sin parámetros.

Devuelve

El texto del portapapeles, o texto vacío si el portapapeles no contiene texto u otro programa lo mantuvo ocupado.

6 ejemplos: Extraer un valor de un texto copiado con una expresión regular, Contar las palabras del portapapeles, Unir las líneas del portapapeles en una sola, La fecha de hoy y un nombre de archivo con marca de tiempo, Pasar a mayúsculas el texto seleccionado, Buscar en la web la selección

ClipboardLoadImage​

ClipboardLoadImage(path: Text) → Bool

Carga un archivo de imagen y lo coloca en el portapapeles, reemplazando el contenido actual, listo para pegarlo en otros programas. Las áreas transparentes de un PNG se vuelven blancas.

Parámetros

  • path: Text — Ruta completa del archivo de imagen, terminada en .bmp, .png, .jpg o .jpeg. Cualquier otra extensión detiene el script con un error.

Devuelve

true si la imagen está en el portapapeles; false si el archivo no existe, no es una imagen legible o el portapapeles está ocupado.

ClipboardPasteReplacementText​

ClipboardPasteReplacementText(text: Text) → Bool · Simple

Coloca texto en el portapapeles y envía Ctrl+V para pegarlo en la ventana activa. No espera a que el pegado se complete, así que espere un momento con UtilityWait antes de ClipboardRestore.

Parámetros

  • text: Text — El texto que se pegará.

Devuelve

true si se estableció el portapapeles y se envió Ctrl+V; false si el portapapeles estaba ocupado o Windows bloqueó las pulsaciones de teclas.

2 ejemplos: Rellenar una plantilla y pegarla, Pasar a mayúsculas el texto seleccionado

ClipboardRestore​

ClipboardRestore() → Bool

Restaura el contenido del portapapeles guardado por el último ClipboardSave de esta ejecución del script, en todos los formatos. Sin un ClipboardSave previo en esta ejecución, vacía el portapapeles.

Parámetros

Sin parámetros.

Devuelve

true si se restauró todo lo guardado; false si el portapapeles estaba ocupado o no se pudo restaurar algún formato.

5 ejemplos: Rellenar una plantilla y pegarla, Buscar en la web el texto seleccionado, Pasar a mayúsculas el texto seleccionado, Buscar en la web la selección, Permitir que solo una acción ejecute una sección a la vez

ClipboardSave​

ClipboardSave() → Bool

Guarda una copia de todo lo que hay en el portapapeles, en todos los formatos, para que ClipboardRestore pueda restaurarlo más adelante en la misma ejecución del script. Una segunda llamada reemplaza la copia guardada.

Parámetros

Sin parámetros.

Devuelve

true si se leyó el portapapeles; false si otro programa lo mantuvo ocupado.

5 ejemplos: Rellenar una plantilla y pegarla, Buscar en la web el texto seleccionado, Pasar a mayúsculas el texto seleccionado, Buscar en la web la selección, Permitir que solo una acción ejecute una sección a la vez

ClipboardSaveImage​

ClipboardSaveImage(path: Text) → Bool

Guarda en un archivo la imagen del portapapeles, como una captura de pantalla tomada con Impr Pant, en el formato que indica la extensión del archivo. Un archivo existente se sobrescribe.

Parámetros

  • path: Text — Ruta completa del archivo que se escribirá, terminada en .bmp, .png, .jpg o .jpeg. Cualquier otra extensión detiene el script con un error.

Devuelve

true si se escribió el archivo; false si el portapapeles no contiene ninguna imagen o no se pudo escribir el archivo.

1 ejemplo: Guardar en un archivo una imagen copiada

ClipboardSetHtml​

ClipboardSetHtml(html: Text) → Bool

Coloca un fragmento HTML en el portapapeles, reemplazando el contenido actual, para que al pegarlo en un correo electrónico o un procesador de textos se conserve el formato. También se agrega una copia de texto sin formato, sin las etiquetas, para los programas que solo pegan texto.

Parámetros

  • html: Text — El fragmento HTML que se colocará, como texto en <b>negrita</b>. No agregue el encabezado HTML del portapapeles; se agrega automáticamente.

Devuelve

true si el HTML y su copia de texto sin formato se colocaron en el portapapeles; false si el portapapeles estaba ocupado.

ClipboardSetRtf​

ClipboardSetRtf(rtf: Text) → Bool

Coloca texto enriquecido (RTF) en el portapapeles, reemplazando el contenido actual, para que al pegarlo en WordPad, Word u Outlook se conserve el formato. También se agrega una copia de las palabras como texto sin formato, para los programas que solo pegan texto.

Parámetros

  • rtf: Text — Un documento RTF completo como texto. Cualquier carácter se puede escribir directamente; los caracteres que no son ASCII simple se escriben por usted como secuencias de escape Unicode de RTF.

Devuelve

true si el RTF y su copia de texto sin formato se colocaron en el portapapeles; false si el portapapeles estaba ocupado.

ClipboardSetText​

ClipboardSetText(text: Text) → Bool · Simple

Coloca texto en el portapapeles, reemplazando lo que haya, listo para pegarlo en cualquier programa.

Parámetros

  • text: Text — El texto que se colocará en el portapapeles.

Devuelve

true si el texto se colocó en el portapapeles; false si otro programa mantuvo ocupado el portapapeles.

2 ejemplos: Extraer un valor de un texto copiado con una expresión regular, Unir las líneas del portapapeles en una sola

Context​

ContextGetActionName​

ContextGetActionName() → Text

Devuelve el nombre de la acción que se está ejecutando. Un evento global devuelve Global_Event_ seguido del id. del evento, como Global_Event_release.

Parámetros

Sin parámetros.

Devuelve

El nombre de la acción, un nombre Global_Event_ para un evento global, o texto vacío en un script de temporizador, de vigilancia de carpeta o de monitor serie.

1 ejemplo: Todo lo que sabe el contexto del disparador

ContextGetApplicationName​

ContextGetApplicationName() → Text

Devuelve el nombre del grupo de aplicaciones cuya acción se está ejecutando, para una acción disparada por un gesto, una tecla de acceso rápido o una expansión de texto.

Parámetros

Sin parámetros.

Devuelve

El nombre del grupo de aplicaciones (normalmente Global para el grupo global), o texto vacío para un evento global o un script de temporizador, de vigilancia de carpeta o de monitor serie.

4 ejemplos: Rellenar una plantilla y pegarla, Todo lo que sabe el contexto del disparador, Dejar pasar un dibujo no reconocido, Agregar a un archivo de registro

ContextGetBoundingBoxHeight​

ContextGetBoundingBoxHeight() → Integer

Devuelve el alto del rectángulo que rodea todo el gesto dibujado, en píxeles. Fuera de un gesto, devuelve 0.

Parámetros

Sin parámetros.

Devuelve

El alto en píxeles, o 0 fuera de un gesto.

2 ejemplos: Todo lo que sabe el contexto del disparador, Capturar el área que encerró en un círculo

ContextGetBoundingBoxWidth​

ContextGetBoundingBoxWidth() → Integer

Devuelve el ancho del rectángulo que rodea todo el gesto dibujado, en píxeles. Fuera de un gesto, devuelve 0.

Parámetros

Sin parámetros.

Devuelve

El ancho en píxeles, o 0 fuera de un gesto.

2 ejemplos: Todo lo que sabe el contexto del disparador, Capturar el área que encerró en un círculo

ContextGetBoundingBoxX​

ContextGetBoundingBoxX() → Integer

Devuelve el borde izquierdo del rectángulo que rodea todo el gesto dibujado, en píxeles de la pantalla virtual. Fuera de un gesto, devuelve 0.

Parámetros

Sin parámetros.

Devuelve

El borde izquierdo en píxeles de la pantalla virtual, o 0 fuera de un gesto.

2 ejemplos: Todo lo que sabe el contexto del disparador, Capturar el área que encerró en un círculo

ContextGetBoundingBoxY​

ContextGetBoundingBoxY() → Integer

Devuelve el borde superior del rectángulo que rodea todo el gesto dibujado, en píxeles de la pantalla virtual. Fuera de un gesto, devuelve 0.

Parámetros

Sin parámetros.

Devuelve

El borde superior en píxeles de la pantalla virtual, o 0 fuera de un gesto.

2 ejemplos: Todo lo que sabe el contexto del disparador, Capturar el área que encerró en un círculo

ContextGetButtonState​

ContextGetButtonState() → Text

Devuelve si un evento global de botón del mouse se disparó al presionar el botón o al soltarlo. Solo el script de un evento global de botón del mouse recibe un valor.

Parámetros

Sin parámetros.

Devuelve

'down' al presionar, 'up' al soltar, o texto vacío para cualquier otro disparador, incluido un gesto.

ContextGetControl​

ContextGetControl() → Window

Devuelve el control exacto al que apuntaba el disparador, como un cuadro de edición bajo el gesto o el mouse, o la ventana con el foco para una tecla de acceso rápido o una expansión de texto. Use ContextGetWindow para obtener su ventana de aplicación.

Parámetros

Sin parámetros.

Devuelve

El control como Window, o una ventana nula cuando el disparador no tiene ventana, como en un script de temporizador, de vigilancia de carpeta, de monitor serie o Load.

ContextGetGestureName​

ContextGetGestureName() → Text

Devuelve el nombre del gesto que se dibujó para ejecutar esta acción. Es el nombre del propio gesto, no el de la acción; consulte ContextGetActionName.

Parámetros

Sin parámetros.

Devuelve

El nombre del gesto, o texto vacío fuera de un gesto.

2 ejemplos: Todo lo que sabe el contexto del disparador, Agregar a un archivo de registro

ContextGetPointCount​

ContextGetPointCount() → Integer

Devuelve cuántas posiciones del cursor se registraron a lo largo del gesto dibujado. Lea cada una con ContextGetPointX y ContextGetPointY.

Parámetros

Sin parámetros.

Devuelve

El número de puntos, o 0 fuera de un gesto.

3 ejemplos: Longitud del trazo de un gesto, Todo lo que sabe el contexto del disparador, ¿Hacia dónde fue el trazo?

ContextGetPointX​

ContextGetPointX(index: Integer) → Integer

Devuelve la posición horizontal en pantalla de un punto registrado del gesto dibujado, en píxeles de la pantalla virtual.

Parámetros

  • index: Integer — Número de punto, empezando en cero, de 0 a ContextGetPointCount() menos 1. El punto 0 es donde comenzó el gesto.

Devuelve

La coordenada x, o 0 si index está fuera del intervalo o la acción no la disparó un gesto.

2 ejemplos: Longitud del trazo de un gesto, ¿Hacia dónde fue el trazo?

ContextGetPointY​

ContextGetPointY(index: Integer) → Integer

Devuelve la posición vertical en pantalla de un punto registrado del gesto dibujado, en píxeles de la pantalla virtual.

Parámetros

  • index: Integer — Número de punto, empezando en cero, de 0 a ContextGetPointCount() menos 1. El punto 0 es donde comenzó el gesto.

Devuelve

La coordenada y, o 0 si index está fuera del intervalo o la acción no la disparó un gesto.

2 ejemplos: Longitud del trazo de un gesto, ¿Hacia dónde fue el trazo?

ContextGetSerialMonitorName​

ContextGetSerialMonitorName() → Text

Devuelve el nombre del monitor serie cuya línea recibida inició este script, tal como se pasó a SerialMonitorCreate. Solo el script de un monitor serie recibe un valor.

Parámetros

Sin parámetros.

Devuelve

El nombre del monitor, o texto vacío para cualquier otro disparador.

ContextGetSerialPortName​

ContextGetSerialPortName() → Text

Devuelve el puerto COM, como COM3, por el que llegó la línea recibida. Solo el script de un monitor serie recibe un valor.

Parámetros

Sin parámetros.

Devuelve

El nombre del puerto, o texto vacío para cualquier otro disparador.

ContextGetSerialTextLine​

ContextGetSerialTextLine() → Text

Devuelve la línea de texto que llegó por el puerto serie e inició este script, como la lectura de un sensor que un Arduino envió con Serial.println. Se quita el final de línea.

Parámetros

Sin parámetros.

Devuelve

La línea recibida sin su terminador, o texto vacío para cualquier otro disparador.

2 ejemplos: Asignar los botones de un dispositivo serie a teclas multimedia, Convertir una perilla de Arduino en un control de volumen

ContextGetStrokeButton​

ContextGetStrokeButton() → Integer

Devuelve el botón del mouse que dibujó el gesto, o que disparó un evento global de botón del mouse, como una constante MouseButton: MouseButton.Primary o MouseButton.Secondary para los botones que Windows trata como clic izquierdo y clic derecho, después de cualquier intercambio entre botón principal y secundario; si no, MouseButton.Middle, MouseButton.X1 o MouseButton.X2. Páselo a MouseClick o MouseButtonDown para presionar el mismo botón.

Parámetros

Sin parámetros.

Devuelve

Un valor MouseButton como MouseButton.Secondary, o -1 para cualquier otro disparador.

2 ejemplos: Todo lo que sabe el contexto del disparador, Bifurcar según el botón del trazo

ContextGetWatchAction​

ContextGetWatchAction() → Text

Devuelve lo que ocurrió en la carpeta vigilada para iniciar este script: 'created', 'deleted', 'modified', 'renamed-old-name', 'renamed-new-name' u 'overflow'.

Parámetros

Sin parámetros.

Devuelve

El tipo de cambio, o texto vacío para cualquier otro disparador. 'overflow' significa que llegaron demasiados cambios a la vez y hay que volver a revisar la carpeta.

1 ejemplo: Vigilar una carpeta

ContextGetWatchName​

ContextGetWatchName() → Text

Devuelve el nombre de la vigilancia de carpeta que inició este script, tal como se pasó a FolderWatchCreate. Solo el script de una vigilancia de carpeta recibe un valor.

Parámetros

Sin parámetros.

Devuelve

El nombre de la vigilancia, o texto vacío para cualquier otro disparador.

ContextGetWatchPath​

ContextGetWatchPath() → Text

Devuelve la ruta del archivo o la carpeta que cambió e inició este script de vigilancia de carpeta, relativa a la carpeta vigilada.

Parámetros

Sin parámetros.

Devuelve

La ruta del elemento cambiado relativa a la carpeta vigilada, o texto vacío para un cambio 'overflow' o cualquier otro disparador.

1 ejemplo: Vigilar una carpeta

ContextGetWindow​

ContextGetWindow() → Window

Devuelve la ventana de aplicación a la que apuntaba el disparador: la ventana de nivel superior que contiene el control bajo el gesto o el mouse, o que contiene el control con el foco para una tecla de acceso rápido o una expansión de texto.

Parámetros

Sin parámetros.

Devuelve

La ventana, o una ventana nula cuando el disparador no tiene ventana, como en un script de temporizador, de vigilancia de carpeta, de monitor serie o Load.

16 ejemplos: Un gesto, varias opciones, Alternar maximizar en la ventana del gesto, Fijar una ventana encima, Recorrer niveles de transparencia de una ventana, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor, Lanzar una ventana al siguiente monitor, Recordar y restaurar la posición de una ventana, Inspeccionar los controles secundarios de una ventana, Ocultar una ventana en la bandeja, Todo lo que sabe el contexto del disparador, Bifurcar según el botón del trazo, Confinar el cursor a una ventana durante 5 segundos, Cambiar el comportamiento mientras se mantiene presionada Ctrl, Una lista guardada en Storage, Enviar una ventana a un monitor concreto, Snippets como funciones reutilizables

ContextRelayGesture​

ContextRelayGesture() → Bool

Reproduce el gesto dibujado como un arrastre real del mouse con el mismo botón y por la misma trayectoria, para que la aplicación que está debajo lo reciba, por ejemplo para seleccionar texto. La entrada real se retiene durante el arrastre.

Parámetros

Sin parámetros.

Devuelve

true si se envió el arrastre completo; false fuera de un gesto o si Windows rechazó parte de la entrada.

1 ejemplo: Dejar pasar un dibujo no reconocido

DateTime​

DateTimeFormat​

DateTimeFormat(iso: Text, style: Integer) → Text · Simple

Da formato a una fecha y hora como texto legible en el formato regional del usuario, o como un FileStamp ordenable. Una hora con Z o con un desfase UTC se convierte primero a la hora local.

Parámetros

  • iso: Text — Una fecha y hora en formato ISO 8601, tal como la devuelve DateTimeGetNow (2026-10-05T14:05:09-04:00). Una fecha sola significa medianoche; sin Z ni desfase se toma como hora local. Años de 1601 a 9999.
  • style: Integer — Una constante DateTimeStyle, como DateTimeStyle.ShortDate, DateTimeStyle.LongDateTime o DateTimeStyle.FileStamp. Cualquier otro valor detiene la acción con un error.

Devuelve

El texto con formato, como 20261005-140509 para DateTimeStyle.FileStamp, o texto vacío si iso está vacío. Un texto que no sea ISO 8601 detiene la acción con un error.

1 ejemplo: La fecha de hoy y un nombre de archivo con marca de tiempo

DateTimeGetNow​

DateTimeGetNow() → Text · Simple

Devuelve la fecha y hora local actual como texto ISO 8601, con precisión de segundos y con el desfase UTC. Páselo a DateTimeFormat o DateTimeGetPart.

Parámetros

Sin parámetros.

Devuelve

Texto como 2026-10-05T14:05:09-04:00, o texto vacío si Windows no puede informar la zona horaria.

1 ejemplo: La fecha de hoy y un nombre de archivo con marca de tiempo

DateTimeGetPart​

DateTimeGetPart(iso: Text, part: Integer) → Integer

Devuelve una parte de una fecha y hora como número: el año, el mes, el día, la hora, el minuto, el segundo o el día de la semana, en hora local.

Parámetros

  • iso: Text — Una fecha y hora en formato ISO 8601, tal como la devuelve DateTimeGetNow. Una hora con Z o con un desfase UTC se convierte a hora local; sin ellos se toma como hora local.
  • part: Integer — Una constante DateTimePart, como DateTimePart.Hour o DateTimePart.Weekday. Cualquier otro valor detiene la acción con un error.

Devuelve

El valor de la parte: mes de 1 a 12, hora de 0 a 23, día de la semana de 1 (lunes) a 7 (domingo). -1 si iso está vacío. Un texto que no sea ISO 8601 detiene la acción con un error.

1 ejemplo: La fecha de hoy y un nombre de archivo con marca de tiempo

Display​

DisplayGetMonitorDpiFromPoint​

DisplayGetMonitorDpiFromPoint(x: Integer, y: Integer) → Integer

Devuelve los PPP que Windows usa actualmente para el monitor que contiene un punto de la pantalla. Un punto fuera de todos los monitores usa el monitor más cercano.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.

Devuelve

Los PPP, como 96 con una escala del 100 por ciento o 144 con una del 150 por ciento. Si Windows no puede informarlos, los PPP del sistema.

DisplayGetPixelColorFromPoint​

DisplayGetPixelColorFromPoint(x: Integer, y: Integer) → Integer

Devuelve el color del píxel de la pantalla en un punto, tal como se muestra actualmente en el monitor.

Parámetros

  • x: Integer — Posición horizontal del píxel en la pantalla, en píxeles.
  • y: Integer — Posición vertical del píxel en la pantalla, en píxeles.

Devuelve

El color como Integer empaquetado como 0xRRGGBB (el rojo en el byte más alto, el azul en el más bajo), o -1 si el punto está fuera de todos los monitores o no se puede leer la pantalla.

1 ejemplo: Leer el color del píxel bajo el cursor

DisplayMonitorEnumeratedAll​

DisplayMonitorEnumeratedAll() → Integer

Toma una instantánea de todos los monitores conectados, ordenados de izquierda a derecha y luego de arriba abajo, para que las funciones integradas DisplayMonitorGetEnumerated los lean por índice. Vuelva a llamarla después de que cambien los monitores.

Parámetros

Sin parámetros.

Devuelve

El número de monitores de la instantánea. Los índices válidos van de 0 a este número menos 1.

2 ejemplos: Enumerar los monitores, Enviar una ventana a un monitor concreto

DisplayMonitorExistsByName​

DisplayMonitorExistsByName(name: Text) → Bool

Comprueba si un monitor guardado por nombre está conectado en este momento. Úsela antes de las funciones integradas de rectángulo FromName, que devuelven 0 tanto para un monitor que falta como para una coordenada 0 real.

Parámetros

  • name: Text — Una ruta de dispositivo de monitor (la opción confiable, obtenida de DisplayMonitorGetDevicePathFromPoint) o un nombre de modelo como DELL U2720Q. No distingue mayúsculas de minúsculas; una coincidencia exacta de ruta de dispositivo tiene prioridad sobre un nombre de modelo.

Devuelve

true si un monitor conectado coincide con el nombre; false si ninguno coincide o name está vacío.

DisplayMonitorGetDevicePathFromPoint​

DisplayMonitorGetDevicePathFromPoint(x: Integer, y: Integer) → Text

Devuelve la ruta de dispositivo del monitor que contiene un punto de la pantalla: un nombre único que puede guardar y pasar más adelante a las funciones integradas FromName. Cambia si el monitor se conecta a otro puerto de video.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.

Devuelve

La ruta de dispositivo, o texto vacío si Windows no puede identificar el monitor. Un punto fuera de todos los monitores usa el monitor más cercano.

DisplayMonitorGetEnumeratedDevicePathAt​

DisplayMonitorGetEnumeratedDevicePathAt(index: Integer) → Text

Devuelve la ruta de dispositivo, un nombre único que puede guardar, de un monitor de la última instantánea de DisplayMonitorEnumeratedAll.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).

Devuelve

La ruta de dispositivo, o texto vacío si index está fuera del intervalo o los monitores cambiaron desde la instantánea.

DisplayMonitorGetEnumeratedDpiAt​

DisplayMonitorGetEnumeratedDpiAt(index: Integer) → Integer

Devuelve los PPP de un monitor de la última instantánea de DisplayMonitorEnumeratedAll, tal como eran cuando se tomó la instantánea.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).

Devuelve

Los PPP, como 96 con una escala del 100 por ciento o 144 con una del 150 por ciento, o 0 si index está fuera del intervalo.

1 ejemplo: Enumerar los monitores

DisplayMonitorGetEnumeratedFriendlyNameAt​

DisplayMonitorGetEnumeratedFriendlyNameAt(index: Integer) → Text

Devuelve el nombre de modelo que informa un monitor, como DELL U2720Q, para un monitor de la última instantánea de DisplayMonitorEnumeratedAll. Dos monitores idénticos informan el mismo nombre.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).

Devuelve

El nombre de modelo, o texto vacío si index está fuera del intervalo, el monitor no informa ningún nombre (habitual en las pantallas integradas de las laptops) o los monitores cambiaron desde la instantánea.

1 ejemplo: Enumerar los monitores

DisplayMonitorGetEnumeratedHeightAt​

DisplayMonitorGetEnumeratedHeightAt(index: Integer, workArea: Bool) → Integer

Devuelve el alto de un monitor de la última instantánea de DisplayMonitorEnumeratedAll, ya sea de su área completa o de su área de trabajo, tal como era cuando se tomó la instantánea.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El alto en píxeles, o 0 si index está fuera del intervalo.

1 ejemplo: Enumerar los monitores

DisplayMonitorGetEnumeratedWidthAt​

DisplayMonitorGetEnumeratedWidthAt(index: Integer, workArea: Bool) → Integer

Devuelve el ancho de un monitor de la última instantánea de DisplayMonitorEnumeratedAll, ya sea de su área completa o de su área de trabajo, tal como era cuando se tomó la instantánea.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El ancho en píxeles, o 0 si index está fuera del intervalo.

1 ejemplo: Enumerar los monitores

DisplayMonitorGetEnumeratedXAt​

DisplayMonitorGetEnumeratedXAt(index: Integer, workArea: Bool) → Integer

Devuelve el borde izquierdo de un monitor de la última instantánea de DisplayMonitorEnumeratedAll, ya sea de su área completa o de su área de trabajo, tal como era cuando se tomó la instantánea.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El borde izquierdo en píxeles de pantalla (negativo para un monitor a la izquierda del principal), o 0 si index está fuera del intervalo. 0 también es un borde real, así que compruebe index con el número de monitores.

DisplayMonitorGetEnumeratedYAt​

DisplayMonitorGetEnumeratedYAt(index: Integer, workArea: Bool) → Integer

Devuelve el borde superior de un monitor de la última instantánea de DisplayMonitorEnumeratedAll, ya sea de su área completa o de su área de trabajo, tal como era cuando se tomó la instantánea.

Parámetros

  • index: Integer — Posición, empezando en cero, del monitor en la última instantánea de DisplayMonitorEnumeratedAll (de izquierda a derecha y luego de arriba abajo).
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El borde superior en píxeles de pantalla (negativo para un monitor por encima del principal), o 0 si index está fuera del intervalo. 0 también es un borde real, así que compruebe index con el número de monitores.

DisplayMonitorGetFriendlyNameFromPoint​

DisplayMonitorGetFriendlyNameFromPoint(x: Integer, y: Integer) → Text

Devuelve el nombre de modelo, como DELL U2720Q, del monitor que contiene un punto de la pantalla. Es legible pero no único: dos monitores idénticos informan el mismo nombre.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.

Devuelve

El nombre de modelo, o texto vacío si el monitor no informa ninguno (habitual en las pantallas integradas de las laptops). Un punto fuera de todos los monitores usa el monitor más cercano.

DisplayMonitorGetRectHeightFromName​

DisplayMonitorGetRectHeightFromName(name: Text, workArea: Bool) → Integer

Devuelve el alto de un monitor conectado, buscado por su ruta de dispositivo o nombre de modelo guardados, ya sea de su área completa o de su área de trabajo.

Parámetros

  • name: Text — Una ruta de dispositivo de monitor (la opción confiable) o un nombre de modelo como DELL U2720Q. No distingue mayúsculas de minúsculas; una coincidencia exacta de ruta de dispositivo tiene prioridad sobre un nombre de modelo.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El alto en píxeles, o 0 si ningún monitor conectado coincide con el nombre.

DisplayMonitorGetRectHeightFromPoint​

DisplayMonitorGetRectHeightFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer

Devuelve el alto del monitor que contiene un punto de la pantalla, ya sea de su área completa o de su área de trabajo. Un punto fuera de todos los monitores usa el monitor más cercano.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El alto en píxeles.

2 ejemplos: Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

DisplayMonitorGetRectWidthFromName​

DisplayMonitorGetRectWidthFromName(name: Text, workArea: Bool) → Integer

Devuelve el ancho de un monitor conectado, buscado por su ruta de dispositivo o nombre de modelo guardados, ya sea de su área completa o de su área de trabajo.

Parámetros

  • name: Text — Una ruta de dispositivo de monitor (la opción confiable) o un nombre de modelo como DELL U2720Q. No distingue mayúsculas de minúsculas; una coincidencia exacta de ruta de dispositivo tiene prioridad sobre un nombre de modelo.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El ancho en píxeles, o 0 si ningún monitor conectado coincide con el nombre.

DisplayMonitorGetRectWidthFromPoint​

DisplayMonitorGetRectWidthFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer

Devuelve el ancho del monitor que contiene un punto de la pantalla, ya sea de su área completa o de su área de trabajo. Un punto fuera de todos los monitores usa el monitor más cercano.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El ancho en píxeles.

3 ejemplos: Cadena else-if, Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

DisplayMonitorGetRectXFromName​

DisplayMonitorGetRectXFromName(name: Text, workArea: Bool) → Integer

Devuelve el borde izquierdo de un monitor conectado, buscado por su ruta de dispositivo o nombre de modelo guardados, ya sea de su área completa o de su área de trabajo.

Parámetros

  • name: Text — Una ruta de dispositivo de monitor (la opción confiable) o un nombre de modelo como DELL U2720Q. No distingue mayúsculas de minúsculas; una coincidencia exacta de ruta de dispositivo tiene prioridad sobre un nombre de modelo.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El borde izquierdo en píxeles de pantalla, o 0 si ningún monitor conectado coincide con el nombre. 0 también es un borde real, así que compruebe primero con DisplayMonitorExistsByName.

DisplayMonitorGetRectXFromPoint​

DisplayMonitorGetRectXFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer

Devuelve el borde izquierdo del monitor que contiene un punto de la pantalla, ya sea de su área completa o de su área de trabajo. Un punto fuera de todos los monitores usa el monitor más cercano.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El borde izquierdo en píxeles de pantalla; negativo para un monitor a la izquierda del principal.

3 ejemplos: Cadena else-if, Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

DisplayMonitorGetRectYFromName​

DisplayMonitorGetRectYFromName(name: Text, workArea: Bool) → Integer

Devuelve el borde superior de un monitor conectado, buscado por su ruta de dispositivo o nombre de modelo guardados, ya sea de su área completa o de su área de trabajo.

Parámetros

  • name: Text — Una ruta de dispositivo de monitor (la opción confiable) o un nombre de modelo como DELL U2720Q. No distingue mayúsculas de minúsculas; una coincidencia exacta de ruta de dispositivo tiene prioridad sobre un nombre de modelo.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El borde superior en píxeles de pantalla, o 0 si ningún monitor conectado coincide con el nombre. 0 también es un borde real, así que compruebe primero con DisplayMonitorExistsByName.

DisplayMonitorGetRectYFromPoint​

DisplayMonitorGetRectYFromPoint(x: Integer, y: Integer, workArea: Bool) → Integer

Devuelve el borde superior del monitor que contiene un punto de la pantalla, ya sea de su área completa o de su área de trabajo. Un punto fuera de todos los monitores usa el monitor más cercano.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.
  • workArea: Bool — true para el área de trabajo, que excluye la barra de tareas y las barras de herramientas acopladas; false para el monitor completo.

Devuelve

El borde superior en píxeles de pantalla; negativo para un monitor por encima del principal.

2 ejemplos: Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

Engine​

EngineConsumePhysicalInput​

EngineConsumePhysicalInput(enable: Bool, timeoutSeconds: Integer) → Bool

Impide que la entrada real del mouse y el teclado del usuario llegue a cualquier ventana, o termina ese bloqueo. La entrada que envían los scripts sigue funcionando, y el bloqueo termina por sí solo al agotarse el tiempo de espera.

Parámetros

  • enable: Bool — true para iniciar o reiniciar el bloqueo de la entrada real; false para terminar el bloqueo, sin importar qué script lo inició.
  • timeoutSeconds: Integer — La duración máxima del bloqueo, en segundos; 1 o más cuando enable es true. Los valores mayores se reducen al máximo de la página de configuración Scripts (120 segundos de forma predeterminada). Se omite cuando enable es false.

Devuelve

Siempre true. Con enable en true, un timeoutSeconds de 0 o menos detiene el script con un error.

EngineDisable​

EngineDisable() → Bool · Simple

Desactiva el motor, igual que al desactivarlo desde el icono de la bandeja, hasta que EngineEnable o la bandeja lo vuelvan a activar. El cambio ocurre justo después de que la llamada regresa. No hace nada en modo seguro.

Parámetros

Sin parámetros.

Devuelve

true si se envió la solicitud; false si el motor no ha terminado de iniciarse.

1 ejemplo: Estado del motor

EngineDisableNextGesture​

EngineDisableNextGesture() → Bool · Simple

Permite que la siguiente pulsación de un botón de dibujo pase directamente a la aplicación en lugar de iniciar un gesto, solo una vez. No tiene efecto mientras el motor está desactivado.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

1 ejemplo: Dejar pasar el siguiente arrastre con el botón derecho

EngineEnable​

EngineEnable() → Bool · Simple

Vuelve a activar el motor después de EngineDisable o de una desactivación desde el icono de la bandeja. El cambio ocurre justo después de que la llamada regresa. No hace nada en modo seguro.

Parámetros

Sin parámetros.

Devuelve

true si se envió la solicitud; false si el motor no ha terminado de iniciarse.

EngineExit​

EngineExit() → Bool · Simple

Cierra el motor con un apagado normal, igual que Salir en el menú de la bandeja: se restauran las ventanas ocultas en la bandeja y se cierra la interfaz de configuración. El cierre comienza justo después de que la llamada regresa.

Parámetros

Sin parámetros.

Devuelve

true si se envió la solicitud de cierre; false si el motor no ha terminado de iniciarse.

EngineIsDisabled​

EngineIsDisabled() → Bool

Devuelve si el motor está desactivado en este momento, ya sea por EngineDisable o el icono de la bandeja, o automáticamente para la aplicación con el foco.

Parámetros

Sin parámetros.

Devuelve

true si el motor está desactivado; false si está activo.

1 ejemplo: Estado del motor

EngineIsSafeMode​

EngineIsSafeMode() → Bool

Devuelve si el motor se inició en modo seguro. En modo seguro solo pueden ejecutarse los scripts que se ejecutan desde la consola de diagnóstico.

Parámetros

Sin parámetros.

Devuelve

true en modo seguro; de lo contrario, false.

1 ejemplo: Estado del motor

EngineReload​

EngineReload() → Bool · Simple

Vuelve a cargar la configuración desde el disco sin reiniciar, como Recargar configuración en el menú de la bandeja. Espera hasta 3 segundos. Todos los demás scripts en ejecución se detienen; este continúa.

Parámetros

Sin parámetros.

Devuelve

true en cuanto la nueva configuración está en uso; false si no se pudo cargar o la recarga tardó más de 3 segundos.

EngineStopAllActions​

EngineStopAllActions() → Bool · Simple

Pide a todas las acciones y scripts en ejecución que se detengan, incluido el que la llama. No se finaliza nada a la fuerza: cada script se detiene en su siguiente paso, así que el que llama puede avanzar un poco más antes.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

File​

FileAppendText​

FileAppendText(path: Text, text: Text) → Bool

Agrega texto al final de un archivo de texto y crea el archivo si no existe. Útil para registros. El texto se escribe como UTF-8 y no se agrega ningún salto de línea automáticamente.

Parámetros

  • path: Text — Ruta completa del archivo. Su carpeta ya debe existir.
  • text: Text — El texto que se agregará. Termínelo con '\n' para mantener una entrada por línea.

Devuelve

true si se escribió el texto; false si la carpeta no existe, el archivo está bloqueado o el inicio del archivo existente parece contener datos binarios.

1 ejemplo: Agregar a un archivo de registro

FileCopy​

FileCopy(source: Text, destination: Text, overwrite: Bool) → Bool

Copia un archivo de cualquier tipo a una nueva ruta. La carpeta de destino ya debe existir.

Parámetros

  • source: Text — Ruta completa del archivo que se copiará.
  • destination: Text — Ruta completa de la nueva copia, incluido su nombre de archivo.
  • overwrite: Bool — true para reemplazar un archivo existente en destination; false para dejarlo como está y devolver false.

Devuelve

true si se copió el archivo; false si el origen no existe, el destino existe y overwrite es false, o la copia falló.

1 ejemplo: Hacer una copia de seguridad de un archivo antes de editarlo

FileCreate​

FileCreate(path: Text, text: Text) → Bool

Crea un nuevo archivo de texto con el contenido indicado, escrito como UTF-8. Se niega si ya existe algo en esa ruta; use FileEditText para reemplazar el contenido de un archivo existente.

Parámetros

  • path: Text — Ruta completa del nuevo archivo. Su carpeta ya debe existir.
  • text: Text — El contenido del archivo. Un texto vacío crea un archivo vacío.

Devuelve

true si se creó el archivo; false si ya existe un archivo o una carpeta ahí, o no se pudo escribir el archivo.

2 ejemplos: La fecha de hoy y un nombre de archivo con marca de tiempo, Agregar a un archivo de registro

FileDelete​

FileDelete(path: Text) → Bool

Elimina un archivo de forma permanente; no va a la Papelera de reciclaje. Un archivo que ya no existe cuenta como éxito. Nunca se elimina una carpeta; para eso, use FolderDelete.

Parámetros

  • path: Text — Ruta completa del archivo que se eliminará.

Devuelve

true si el archivo ya no existe, incluso cuando nunca existió; false si la ruta es una carpeta, o el archivo está bloqueado o se deniega el acceso.

FileEditText​

FileEditText(path: Text, text: Text) → Bool

Reemplaza todo el contenido de un archivo de texto existente, escrito como UTF-8. Rechaza un archivo que parezca contener datos binarios. Use FileCreate para un archivo nuevo.

Parámetros

  • path: Text — Ruta completa de un archivo de texto existente.
  • text: Text — El nuevo contenido, que reemplaza todo lo que hay en el archivo.

Devuelve

true si se volvió a escribir el archivo; false si no existe, su inicio parece contener datos binarios o no se pudo escribir.

1 ejemplo: Hacer una copia de seguridad de un archivo antes de editarlo

FileExists​

FileExists(path: Text) → Bool

Comprueba si existe un archivo en una ruta. Una carpeta en esa ruta no cuenta; use FolderExists para las carpetas.

Parámetros

  • path: Text — Ruta completa del archivo que se comprobará.

Devuelve

true si existe un archivo ahí; false si no existe nada o es una carpeta.

2 ejemplos: Agregar a un archivo de registro, Hacer una copia de seguridad de un archivo antes de editarlo

FileGetCreationDate​

FileGetCreationDate(path: Text) → Text

Devuelve cuándo se creó un archivo, como fecha y hora ISO 8601 en UTC que DateTimeFormat y las demás funciones integradas DateTime pueden leer.

Parámetros

  • path: Text — Ruta completa del archivo.

Devuelve

La hora de creación, como 2026-10-01T18:05:09Z, o texto vacío si el archivo no existe o la ruta es una carpeta.

FileGetModifiedDate​

FileGetModifiedDate(path: Text) → Text

Devuelve cuándo cambió por última vez el contenido de un archivo, como fecha y hora ISO 8601 en UTC que DateTimeFormat y las demás funciones integradas DateTime pueden leer.

Parámetros

  • path: Text — Ruta completa del archivo.

Devuelve

La hora de la última modificación, como 2026-10-01T18:05:09Z, o texto vacío si el archivo no existe o la ruta es una carpeta.

1 ejemplo: Leer un archivo y contar sus líneas

FileGetProductVersion​

FileGetProductVersion(path: Text) → Text

Devuelve la versión del producto almacenada en un archivo de programa o de biblioteca, como un .exe o un .dll. Es la versión del producto con el que se distribuye el archivo, que puede ser distinta de FileGetVersion.

Parámetros

  • path: Text — Ruta completa del .exe, .dll u otro archivo con información de versión.

Devuelve

La versión como cuatro números, como 10.0.22621.1, o texto vacío si el archivo no tiene información de versión o no existe.

FileGetSize​

FileGetSize(path: Text) → Integer

Devuelve el tamaño de un archivo en bytes, sin abrir ni leer el archivo.

Parámetros

  • path: Text — Ruta completa del archivo.

Devuelve

El tamaño en bytes, o -1 si el archivo no existe o la ruta es una carpeta.

1 ejemplo: Leer un archivo y contar sus líneas

FileGetVersion​

FileGetVersion(path: Text) → Text

Devuelve la versión de archivo almacenada en un archivo de programa o de biblioteca, como un .exe o un .dll, tal como se muestra en la pestaña Detalles de sus Propiedades.

Parámetros

  • path: Text — Ruta completa del .exe, .dll u otro archivo con información de versión.

Devuelve

La versión como cuatro números, como 10.0.22621.1, o texto vacío si el archivo no tiene información de versión o no existe.

FileMove​

FileMove(source: Text, destination: Text, overwrite: Bool) → Bool

Mueve un archivo de cualquier tipo a una nueva ruta, lo que también permite darle un nuevo nombre, incluido un cambio solo de mayúsculas y minúsculas. La carpeta de destino ya debe existir.

Parámetros

  • source: Text — Ruta completa del archivo que se moverá.
  • destination: Text — Ruta completa de la nueva ubicación del archivo, incluido su nombre de archivo.
  • overwrite: Bool — true para reemplazar en un solo paso un archivo existente en destination; false para dejarlo como está y devolver false. Un destino que solo difiere del origen en mayúsculas y minúsculas no es un archivo existente.

Devuelve

true si se movió el archivo; false si el origen no existe, el destino existe y overwrite es false, o el movimiento falló.

FileReadText​

FileReadText(path: Text) → Text

Lee un archivo de texto completo y devuelve su contenido. Reconoce UTF-8, UTF-16 con marca de orden de bytes y archivos en la página de códigos heredada del sistema. Rechaza los archivos binarios.

Parámetros

  • path: Text — Ruta completa del archivo de texto.

Devuelve

El contenido del archivo, o texto vacío si el archivo no existe, no se puede leer o parece contener datos binarios.

2 ejemplos: Leer un archivo y contar sus líneas, Hacer una copia de seguridad de un archivo antes de editarlo

FileRename​

FileRename(path: Text, newName: Text) → Bool

Cambia el nombre de un archivo y lo mantiene en su carpeta actual. También funciona un cambio solo de mayúsculas y minúsculas, como de report.txt a Report.txt. Para mover un archivo a otra carpeta, use FileMove.

Parámetros

  • path: Text — Ruta completa del archivo cuyo nombre se cambiará.
  • newName: Text — Solo el nuevo nombre de archivo, como report-old.txt. Un nombre que contenga una barra diagonal o una barra diagonal inversa detiene el script con un error.

Devuelve

true si se cambió el nombre del archivo; false si no existe, ya existe otro archivo o carpeta con el nuevo nombre o el cambio de nombre falló.

Folder​

FolderCreate​

FolderCreate(path: Text) → Bool

Crea una carpeta, incluidas las carpetas principales que falten. Una carpeta que ya existe cuenta como éxito.

Parámetros

  • path: Text — Ruta completa de la carpeta que se creará.

Devuelve

true si la carpeta existe después; false si un archivo lo impide o no se pudo crear la carpeta.

FolderDelete​

FolderDelete(path: Text, recursive: Bool) → Bool

Elimina una carpeta de forma permanente; no va a la Papelera de reciclaje. Con recursive en true, también se elimina todo su contenido. Una carpeta que ya no existe cuenta como éxito. Nunca se elimina un archivo; para eso, use FileDelete.

Parámetros

  • path: Text — Ruta completa de la carpeta que se eliminará.
  • recursive: Bool — true para eliminar la carpeta y todo su contenido; false para eliminarla solo cuando está vacía.

Devuelve

true si la carpeta ya no existe; false si la ruta es un archivo, la carpeta no está vacía y recursive es false, o algo de su contenido está bloqueado o protegido.

FolderEnumerateAll​

FolderEnumerateAll(path: Text, recursive: Bool) → Integer

Enumera los archivos y subcarpetas de una carpeta y devuelve cuántos hay. Lea cada ruta completa con FolderGetEnumeratedPathAt. Se omiten las subcarpetas a las que no se puede acceder.

Parámetros

  • path: Text — Ruta completa de la carpeta que se enumerará.
  • recursive: Bool — true para enumerar también todo lo que hay dentro de todas las subcarpetas; false solo para el contenido directo de la carpeta.

Devuelve

El número de entradas encontradas, o -1 si la carpeta no existe o no se puede leer.

1 ejemplo: Contar los tipos de archivo de una carpeta

FolderExists​

FolderExists(path: Text) → Bool

Comprueba si existe una carpeta en una ruta. Un archivo en esa ruta no cuenta; use FileExists para los archivos.

Parámetros

  • path: Text — Ruta completa de la carpeta que se comprobará.

Devuelve

true si existe una carpeta ahí; false si no existe nada o es un archivo.

FolderGetEnumeratedPathAt​

FolderGetEnumeratedPathAt(index: Integer) → Text

Devuelve una ruta completa de la lista creada por la última llamada a FolderEnumerateAll en esta ejecución del script.

Parámetros

  • index: Integer — Posición en la lista, de 0 al número que devolvió FolderEnumerateAll menos 1.

Devuelve

La ruta completa de un archivo o una carpeta, o texto vacío si index está fuera del intervalo o no se ha llamado a FolderEnumerateAll.

1 ejemplo: Contar los tipos de archivo de una carpeta

FolderRename​

FolderRename(path: Text, newName: Text) → Bool

Cambia el nombre de una carpeta y la mantiene, con su contenido, en su carpeta principal actual. También funciona un cambio solo de mayúsculas y minúsculas.

Parámetros

  • path: Text — Ruta completa de la carpeta cuyo nombre se cambiará.
  • newName: Text — Solo el nuevo nombre de la carpeta. Un nombre que contenga una barra diagonal o una barra diagonal inversa detiene el script con un error.

Devuelve

true si se cambió el nombre de la carpeta; false si no existe, ya existe otro archivo o carpeta con el nuevo nombre o el cambio de nombre falló, por ejemplo porque hay un archivo abierto dentro.

FolderWatchCreate​

FolderWatchCreate(name: Text, path: Text, recursive: Bool, filterMask: Integer, script: Text) → Bool

Empieza a vigilar una carpeta y ejecuta un script por cada cambio que informa Windows, como la creación, modificación, cambio de nombre o eliminación de un archivo. La vigilancia sigue en ejecución después de que termina este script.

Parámetros

  • name: Text — Un nombre para la vigilancia. Crear una vigilancia con un nombre que ya está en uso reemplaza esa vigilancia. Los nombres distinguen mayúsculas de minúsculas.
  • path: Text — Ruta completa de la carpeta que se vigilará.
  • recursive: Bool — true para vigilar también todas las subcarpetas; false para vigilar solo la propia carpeta.
  • filterMask: Integer — Qué tipos de cambio se informan: constantes FileNotify combinadas con |, como FileNotify.FileName | FileNotify.LastWrite.
  • script: Text — El script que se ejecutará por cada cambio, como Text. Lee el cambio con ContextGetWatchAction (created, deleted, modified, renamed-old-name, renamed-new-name u overflow) y ContextGetWatchPath.

Devuelve

true si la vigilancia está en ejecución; false si la carpeta no existe, no se puede abrir o filterMask es 0.

1 ejemplo: Vigilar una carpeta

FolderWatchDelete​

FolderWatchDelete(name: Text) → Bool

Detiene una vigilancia de carpeta creada con FolderWatchCreate, para que su script ya no se ejecute.

Parámetros

  • name: Text — El nombre que se pasó a FolderWatchCreate. Los nombres distinguen mayúsculas de minúsculas.

Devuelve

true si se encontró y se detuvo una vigilancia con ese nombre; false si no había ninguna.

1 ejemplo: Vigilar una carpeta

FolderWatchDeleteAll​

FolderWatchDeleteAll() → Bool

Detiene todas las vigilancias de carpeta creadas con FolderWatchCreate, para que ninguno de sus scripts vuelva a ejecutarse.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

FolderWatchGetCount​

FolderWatchGetCount() → Integer

Devuelve cuántas vigilancias de carpeta están en ejecución y toma una instantánea de sus nombres para FolderWatchGetEnumeratedNameAt.

Parámetros

Sin parámetros.

Devuelve

El número de vigilancias de carpeta en ejecución, o 0 si no hay ninguna.

FolderWatchGetEnumeratedNameAt​

FolderWatchGetEnumeratedNameAt(index: Integer) → Text

Devuelve un nombre de vigilancia de la instantánea tomada por la última llamada a FolderWatchGetCount en esta ejecución del script.

Parámetros

  • index: Integer — Posición en la instantánea, de 0 al número menos 1. El orden no tiene ningún significado.

Devuelve

El nombre de la vigilancia, o texto vacío si index está fuera del intervalo o no se ha llamado a FolderWatchGetCount.

GestureProfile​

GestureProfileEnumerateAll​

GestureProfileEnumerateAll() → Integer

Toma una lista de todos los perfiles de gestos de la configuración y devuelve cuántos hay. Lea cada uno con GestureProfileGetEnumeratedIdAt y GestureProfileGetEnumeratedNameAt.

Parámetros

Sin parámetros.

Devuelve

El número de perfiles de gestos, o 0 si no hay ninguno.

1 ejemplo: Pasar al siguiente perfil de gestos

GestureProfileGetActiveId​

GestureProfileGetActiveId() → Text

Devuelve el id. del perfil de gestos que está activo en este momento.

Parámetros

Sin parámetros.

Devuelve

El id. del perfil activo, o texto vacío si no hay ningún perfil activo.

2 ejemplos: Una notificación de Windows, Pasar al siguiente perfil de gestos

GestureProfileGetEnumeratedIdAt​

GestureProfileGetEnumeratedIdAt(index: Integer) → Text

Devuelve el id. de un perfil de la lista que GestureProfileEnumerateAll tomó por última vez en este script. Pase el id. a GestureProfileSwitch.

Parámetros

  • index: Integer — Posición en la lista, empezando en cero, de 0 al número menos 1.

Devuelve

El id. del perfil, o texto vacío si index está fuera del intervalo o no se ha llamado a GestureProfileEnumerateAll.

1 ejemplo: Pasar al siguiente perfil de gestos

GestureProfileGetEnumeratedNameAt​

GestureProfileGetEnumeratedNameAt(index: Integer) → Text

Devuelve el nombre para mostrar de un perfil de la lista que GestureProfileEnumerateAll tomó por última vez en este script.

Parámetros

  • index: Integer — Posición en la lista, empezando en cero, de 0 al número menos 1.

Devuelve

El nombre del perfil, o texto vacío si index está fuera del intervalo o no se ha llamado a GestureProfileEnumerateAll.

1 ejemplo: Pasar al siguiente perfil de gestos

GestureProfileSwitch​

GestureProfileSwitch(profileId: Text) → Bool · Simple

Cambia a otro perfil de gestos, igual que al elegirlo en el menú de la bandeja, y recuerda la elección después de reiniciar. El cambio ocurre justo después de que la llamada regresa.

Parámetros

  • profileId: Text — El id. del perfil al que se cambiará, como uno de GestureProfileGetEnumeratedIdAt, o texto vacío para ningún perfil.

Devuelve

true si se envió la solicitud; false para un id. que ningún perfil tiene, y no cambia nada. El cambio ocurre justo después de que la llamada regresa; use GestureProfileGetActiveId para confirmarlo.

1 ejemplo: Pasar al siguiente perfil de gestos

Keyboard​

KeyboardGetKeyState​

KeyboardGetKeyState(key: Integer) → Integer

Devuelve el estado sin procesar de Windows de una tecla en este momento. Mientras otro escritorio, como una solicitud de UAC o la pantalla de bloqueo, está al frente, todas las teclas se leen como no presionadas. Para un simple sí o no, use KeyboardIsKeyDown o KeyboardIsKeyToggled.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.CapsLock, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

Un Integer sin procesar: negativo (bit más alto activado) cuando la tecla está presionada, e impar (bit más bajo activado) cuando una tecla de bloqueo como Bloq Mayús está activada.

1 ejemplo: Bits de estado de tecla

KeyboardGetKeyStateAsync​

KeyboardGetKeyStateAsync(key: Integer) → Integer

Devuelve el estado sin procesar de Windows de una tecla en este preciso momento, sin importar qué ventana tenga el foco.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.ShiftKey, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

Un Integer sin procesar: negativo (bit más alto activado) cuando la tecla está presionada en este momento. El bit más bajo puede estar activado si la tecla se presionó desde una comprobación anterior, lo que Windows no garantiza.

KeyboardIsKeyDown​

KeyboardIsKeyDown(key: Integer) → Bool

Comprueba si una tecla está presionada en este momento. Mientras otro escritorio, como una solicitud de UAC o la pantalla de bloqueo, está al frente, todas las teclas se leen como no presionadas.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.ControlKey, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

true si la tecla está presionada; false si está suelta.

2 ejemplos: Bits de estado de tecla, Cambiar el comportamiento mientras se mantiene presionada Ctrl

KeyboardIsKeyToggled​

KeyboardIsKeyToggled(key: Integer) → Bool

Comprueba si una tecla de bloqueo está activada. Solo tiene sentido para VirtualKey.CapsLock, VirtualKey.NumLock y VirtualKey.Scroll.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.CapsLock, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

true si la tecla de bloqueo está activada; false si está desactivada.

1 ejemplo: Bits de estado de tecla

KeyboardKeyDown​

KeyboardKeyDown(key: Integer) → Bool

Presiona una tecla y la mantiene presionada hasta que KeyboardKeyUp la suelte. Con la opción Enviar teclas multimedia y de navegador como comandos activada, una tecla multimedia, de volumen o de navegador envía su comando en su lugar.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.ShiftKey, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

true si se envió la pulsación de la tecla; false si Windows la bloqueó o, para una tecla enviada como comando, ninguna ventana tiene el foco.

1 ejemplo: Shift+clic

KeyboardKeyUp​

KeyboardKeyUp(key: Integer) → Bool

Suelta una tecla presionada con KeyboardKeyDown. Para una tecla multimedia, de volumen o de navegador enviada como comando no hace nada, ya que el comando se envió al presionarla.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.ShiftKey, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

true si se envió la liberación de la tecla, y siempre true para una tecla enviada como comando; false si Windows la bloqueó.

1 ejemplo: Shift+clic

KeyboardPressKey​

KeyboardPressKey(key: Integer) → Bool · Simple

Presiona y suelta una tecla, que puede ser cualquier tecla para la que Windows tenga un código, incluidas las teclas multimedia. Con la opción Enviar teclas multimedia y de navegador como comandos activada, esas teclas envían su comando en su lugar.

Parámetros

  • key: Integer — Una constante VirtualKey, como VirtualKey.MediaPlayPause, o un código de tecla virtual de 0 a 255. Cualquier otro valor detiene el script con un error.

Devuelve

true si se envió la pulsación de la tecla; false si Windows la bloqueó o, para una tecla enviada como comando, ninguna ventana tiene el foco.

3 ejemplos: Constantes con nombre frente a números sin procesar, Teclas multimedia, Asignar los botones de un dispositivo serie a teclas multimedia

KeyboardPressKeyCombo​

KeyboardPressKeyCombo(combo: Text) → Bool · Simple

Presiona una combinación de teclas como Ctrl+C: mantiene presionados los modificadores, presiona y suelta la tecla y luego suelta los modificadores. Envía una combinación por llamada.

Parámetros

  • combo: Text — Símbolos modificadores opcionales (^ para Ctrl, + para Shift, @ para Windows, el signo de porcentaje para Alt) seguidos de una letra o un dígito, o de un nombre de tecla entre llaves como {ENTER}, {F5} o {LEFT}, en mayúsculas o minúsculas. Ejemplo: '^c' es Ctrl+C.

Devuelve

true si se enviaron las pulsaciones de teclas; false si Windows las bloqueó. Una combinación que no entiende detiene el script con un error.

4 ejemplos: Combinaciones de teclas, Escribir una firma, Pasar a mayúsculas el texto seleccionado, Buscar en la web la selección

KeyboardTypeText​

KeyboardTypeText(text: Text) → Bool · Simple

Escribe texto en la ventana con el foco carácter por carácter, en cualquier idioma e incluidos los emojis, sea cual sea la distribución del teclado. Espera el tiempo de la opción Retraso de escritura antes de cada carácter.

Parámetros

  • text: Text — El texto que se escribirá. Cada salto de línea se envía como una pulsación de Entrar. En el script de una expansión de texto, la tecla que terminó el disparador se escribe después.

Devuelve

true si se enviaron todos los caracteres o el texto está vacío; false si Windows bloqueó algunos de ellos.

3 ejemplos: Iniciar un programa, esperar su ventana y actuar sobre ella, La fecha de hoy y un nombre de archivo con marca de tiempo, Escribir una firma

Macro​

MacroClearTemporary​

MacroClearTemporary() → Bool

Descarta la macro grabada con MacroRecordTemporary.

Parámetros

Sin parámetros.

Devuelve

true si había una macro grabada que descartar; false si no había ninguna.

MacroExpectFocusedWindow​

MacroExpectFocusedWindow(exeName: Text, windowClass: Text) → Bool

Espera hasta que la ventana en primer plano pertenezca al programa y a la clase de ventana indicados, como máximo el tiempo de la opción Espera de ventana al reproducir (2 segundos de forma predeterminada). Si nunca coincide, muestra una notificación y detiene el script.

Parámetros

  • exeName: Text — El nombre de archivo del programa, como notepad.exe. No distingue mayúsculas de minúsculas; un texto vacío coincide con cualquier programa.
  • windowClass: Text — El nombre de clase de la ventana de nivel superior, como Notepad. No distingue mayúsculas de minúsculas; un texto vacío coincide con cualquier clase.

Devuelve

true cuando la ventana coincide; false si se pidió al script que se detuviera mientras esperaba.

MacroExpectWindowAt​

MacroExpectWindowAt(x: Integer, y: Integer, exeName: Text, windowClass: Text) → Bool

Espera hasta que la ventana de nivel superior en un punto de la pantalla pertenezca al programa y a la clase de ventana indicados, como máximo el tiempo de la opción Espera de ventana al reproducir (2 segundos de forma predeterminada). Si nunca coincide, muestra una notificación y detiene el script.

Parámetros

  • x: Integer — Posición horizontal en la pantalla que se comprobará, en píxeles de la pantalla virtual.
  • y: Integer — Posición vertical en la pantalla que se comprobará, en píxeles de la pantalla virtual.
  • exeName: Text — El nombre de archivo del programa, como notepad.exe. No distingue mayúsculas de minúsculas; un texto vacío coincide con cualquier programa.
  • windowClass: Text — El nombre de clase de la ventana de nivel superior, como Notepad. No distingue mayúsculas de minúsculas; un texto vacío coincide con cualquier clase.

Devuelve

true cuando la ventana coincide; false si se pidió al script que se detuviera mientras esperaba.

MacroGetTemporaryScript​

MacroGetTemporaryScript() → Text

Devuelve la macro grabada con MacroRecordTemporary como texto de script de Pasos, para que un script pueda guardarla o inspeccionarla.

Parámetros

Sin parámetros.

Devuelve

El texto de Pasos de la última grabación terminada, o texto vacío si no se ha grabado nada o se borró. Mientras se realiza una nueva grabación, sigue devolviendo la anterior.

MacroPlayTemporary​

MacroPlayTemporary(timeoutSeconds: Integer) → Bool

Reproduce la macro grabada con MacroRecordTemporary y espera hasta que termine o se agote el tiempo de espera. La entrada real del mouse y el teclado del usuario se retiene durante la reproducción.

Parámetros

  • timeoutSeconds: Integer — El tiempo máximo de espera, en segundos; 1 o más, o el script se detiene con un error. Una macro que sigue en ejecución después de este tiempo continúa, pero la entrada real ya no se retiene.

Devuelve

true si la macro se reprodujo hasta el final a tiempo; false si no había nada grabado, falló un paso o una comprobación de ventana, se detuvo la reproducción o seguía en ejecución al agotarse el tiempo de espera.

MacroRecordTemporary​

MacroRecordTemporary() → Bool

Empieza a grabar la entrada del mouse y el teclado en una macro temporal que se guarda en memoria; presione Ctrl+Pausa para detenerla. Regresa de inmediato, antes de que comience la grabación. Puede aparecer primero un cuadro de confirmación.

Parámetros

Sin parámetros.

Devuelve

true si se envió la solicitud de grabación; false si ya hay una grabación en curso, iniciándose o solicitada, o si el motor no ha terminado de iniciarse.

Math​

MathAbs​

MathAbs(value: Any) → Any

Devuelve el valor absoluto de un número, es decir, el número sin su signo menos. Funciona con valores Integer y Real.

Parámetros

  • value: Any — El número Integer o Real.

Devuelve

El valor absoluto, del mismo tipo que value (Integer o Real); 0.0 para un Real que es NaN o infinito. Un valor que no es un número detiene la acción con un error.

2 ejemplos: Limitar un valor a un intervalo, ¿Hacia dónde fue el trazo?

MathAtan2​

MathAtan2(y: Any, x: Any) → Real

Devuelve el ángulo, en radianes, desde el origen hasta el punto (x, y). La y de la pantalla crece hacia abajo, así que para obtener el ángulo de un trazo en el sentido matemático habitual pase el cambio vertical con el signo invertido.

Parámetros

  • y: Any — La coordenada vertical del punto. Integer o Real. Observe que y va primero.
  • x: Any — La coordenada horizontal del punto. Integer o Real.

Devuelve

El ángulo en radianes, de -pi a pi, como Real; 0.0 si alguno de los argumentos es NaN o infinito. Los argumentos que no son números detienen la acción con un error.

MathCeil​

MathCeil(value: Real) → Integer

Redondea un número hacia arriba al número entero más cercano. MathCeil(2.1) es 3; MathCeil(-2.1) es -2.

Parámetros

  • value: Real — El número que se redondeará hacia arriba. Un Integer se acepta tal cual.

Devuelve

El valor redondeado como Integer. 0 si value es NaN o infinito; un valor fuera del rango de Integer da el Integer más grande o más pequeño.

1 ejemplo: Redondeo y funciones integradas matemáticas de Real

MathClamp​

MathClamp(value: Any, min: Any, max: Any) → Any

Mantiene un número dentro de un intervalo: devuelve min si value es menor, max si value es mayor, y value en los demás casos. Funciona con valores Integer y Real.

Parámetros

  • value: Any — El número que se mantendrá dentro del intervalo.
  • min: Any — El valor mínimo permitido. No debe ser mayor que max.
  • max: Any — El valor máximo permitido.

Devuelve

El que se haya elegido de value, min o max, conservando su propio tipo (Integer o Real); 0.0 si algún argumento es NaN o infinito. Los valores que no son números, o un min mayor que max, detienen la acción con un error.

1 ejemplo: Limitar un valor a un intervalo

MathCos​

MathCos(radians: Real) → Real

Devuelve el coseno de un ángulo expresado en radianes. Para convertir grados, multiplique por MathGetPi() y divida entre 180.

Parámetros

  • radians: Real — El ángulo en radianes. Un Integer se acepta tal cual.

Devuelve

El coseno, de -1 a 1, como Real; 0.0 si radians es NaN o infinito.

1 ejemplo: Mover el mouse en círculo

MathFloor​

MathFloor(value: Real) → Integer

Redondea un número hacia abajo al número entero más cercano. MathFloor(2.9) es 2; MathFloor(-2.1) es -3.

Parámetros

  • value: Real — El número que se redondeará hacia abajo. Un Integer se acepta tal cual.

Devuelve

El valor redondeado como Integer. 0 si value es NaN o infinito; un valor fuera del rango de Integer da el Integer más grande o más pequeño.

1 ejemplo: Redondeo y funciones integradas matemáticas de Real

MathGetE​

MathGetE() → Real

Devuelve la constante matemática e (aproximadamente 2.71828), la base de los logaritmos naturales.

Parámetros

Sin parámetros.

Devuelve

El valor de e como Real.

MathGetPi​

MathGetPi() → Real

Devuelve la constante matemática pi (aproximadamente 3.14159). Úsela para convertir entre grados y radianes.

Parámetros

Sin parámetros.

Devuelve

El valor de pi como Real.

1 ejemplo: Mover el mouse en círculo

MathLog​

MathLog(value: Real) → Real

Devuelve el logaritmo natural (base e) de un número. Divida entre MathLog(10.0) para obtener un logaritmo en base 10.

Parámetros

  • value: Real — El número, mayor que 0. Un Integer se acepta tal cual.

Devuelve

El logaritmo natural como Real, o 0 si value es 0, negativo, NaN o infinito.

MathMax​

MathMax(a: Any, b: Any) → Any

Devuelve el mayor de dos números. Funciona con valores Integer y Real.

Parámetros

  • a: Any — El primer número.
  • b: Any — El segundo número.

Devuelve

El mayor de a o b, conservando su propio tipo; a si son iguales; 0.0 si alguno es NaN o infinito. Los argumentos que no son números detienen la acción con un error.

MathMin​

MathMin(a: Any, b: Any) → Any

Devuelve el menor de dos números. Funciona con valores Integer y Real.

Parámetros

  • a: Any — El primer número.
  • b: Any — El segundo número.

Devuelve

El menor de a o b, conservando su propio tipo; a si son iguales; 0.0 si alguno es NaN o infinito. Los argumentos que no son números detienen la acción con un error.

1 ejemplo: Subir el volumen con indicación en pantalla

MathMod​

MathMod(value: Any, divisor: Any) → Any

Devuelve el residuo de dividir value entre divisor. El resultado toma el signo del divisor, así que MathMod(-30, 360) es 330: lo adecuado para ajustar un ángulo a su intervalo o recorrer un índice de forma cíclica.

Parámetros

  • value: Any — El número que se dividirá. Integer o Real.
  • divisor: Any — El número entre el que se dividirá. Integer o Real.

Devuelve

El residuo: un Integer cuando ambos argumentos son Integer; si no, un Real. 0 si divisor es 0 o si alguno de los argumentos es NaN o infinito. Los argumentos que no son números detienen la acción con un error.

MathPow​

MathPow(base: Real, exponent: Real) → Real

Eleva un número a una potencia, como un cuadrado o un cubo. MathPow(2.0, 10.0) es 1024.

Parámetros

  • base: Real — El número que se elevará. Un Integer se acepta tal cual.
  • exponent: Real — La potencia a la que se elevará. Puede ser negativa o fraccionaria; 0.5 da la raíz cuadrada.

Devuelve

El resultado como Real, o 0 si un argumento es NaN o infinito o no hay un resultado finito, por ejemplo 0 elevado a una potencia negativa o un resultado demasiado grande para almacenarse.

MathRandom​

MathRandom(min: Integer, max: Integer) → Integer

Devuelve un número entero aleatorio entre min y max, ambos incluidos. MathRandom(1, 6) tira un dado.

Parámetros

  • min: Integer — El resultado mínimo posible.
  • max: Integer — El resultado máximo posible. No debe ser menor que min.

Devuelve

Un Integer aleatorio de min a max. Un min mayor que max detiene la acción con un error.

2 ejemplos: while (true) con una marca de salida, Números aleatorios y un volado

MathRound​

MathRound(value: Real) → Integer

Redondea un número al número entero más cercano. Las mitades se redondean alejándose de cero: 2.5 se convierte en 3 y -2.5 en -3.

Parámetros

  • value: Real — El número que se redondeará. Para conservar dos decimales como número entero, redondee value multiplicado por 100.

Devuelve

El valor redondeado como Integer. 0 si value es NaN o infinito; un valor fuera del rango de Integer da el Integer más grande o más pequeño.

5 ejemplos: Redondeo y funciones integradas matemáticas de Real, Longitud del trazo de un gesto, Mover el mouse en círculo, Dar formato a un Real sin seis decimales, Subir el volumen con indicación en pantalla

MathSin​

MathSin(radians: Real) → Real

Devuelve el seno de un ángulo expresado en radianes. Para convertir grados, multiplique por MathGetPi() y divida entre 180.

Parámetros

  • radians: Real — El ángulo en radianes. Un Integer se acepta tal cual.

Devuelve

El seno, de -1 a 1, como Real; 0.0 si radians es NaN o infinito.

1 ejemplo: Mover el mouse en círculo

MathSqrt​

MathSqrt(value: Real) → Real

Devuelve la raíz cuadrada de un número. MathSqrt(dx * dx + dy * dy) es la distancia entre dos puntos.

Parámetros

  • value: Real — El número, 0 o mayor. Un Integer se acepta tal cual.

Devuelve

La raíz cuadrada como Real, o 0 si value es negativo, NaN o infinito.

2 ejemplos: Redondeo y funciones integradas matemáticas de Real, Longitud del trazo de un gesto

MathTan​

MathTan(radians: Real) → Real

Devuelve la tangente de un ángulo expresado en radianes. Cerca de un ángulo recto el resultado se vuelve muy grande.

Parámetros

  • radians: Real — El ángulo en radianes. Un Integer se acepta tal cual.

Devuelve

La tangente como Real; 0.0 si radians es NaN o infinito.

Mouse​

MouseButtonDown​

MouseButtonDown(button: Integer) → Bool

Presiona un botón del mouse en la posición actual del cursor y lo mantiene presionado hasta MouseButtonUp. Combínela con MouseMoveTo para programar un arrastre.

Parámetros

  • button: Integer — Una constante MouseButton, como MouseButton.Primary. Primary y Secondary siguen la opción de intercambio de botones de Windows; Left y Right son los botones físicos.

Devuelve

true si se envió la pulsación del botón; false si Windows la bloqueó. Un botón desconocido detiene el script con un error.

1 ejemplo: Un arrastre por script

MouseButtonUp​

MouseButtonUp(button: Integer) → Bool

Suelta un botón del mouse en la posición actual del cursor, normalmente uno presionado con MouseButtonDown.

Parámetros

  • button: Integer — Una constante MouseButton, como MouseButton.Primary. Primary y Secondary siguen la opción de intercambio de botones de Windows; Left y Right son los botones físicos.

Devuelve

true si se envió la liberación del botón; false si Windows la bloqueó. Un botón desconocido detiene el script con un error.

1 ejemplo: Un arrastre por script

MouseClick​

MouseClick(x: Integer, y: Integer, button: Integer) → Bool · Simple

Mueve el cursor a un punto de la pantalla y hace clic ahí con un botón del mouse. Después, el cursor permanece en ese punto.

Parámetros

  • x: Integer — Posición horizontal en la pantalla donde se hará clic, en píxeles.
  • y: Integer — Posición vertical en la pantalla donde se hará clic, en píxeles.
  • button: Integer — Una constante MouseButton, como MouseButton.Primary. Primary y Secondary siguen la opción de intercambio de botones de Windows; Left y Right son los botones físicos.

Devuelve

true si se envió el clic; false si no se pudo mover el cursor al punto, en cuyo caso no se hace clic, o si Windows bloqueó el clic. Un botón desconocido detiene el script con un error.

2 ejemplos: Hacer clic en algún lugar y devolver el cursor, Shift+clic

MouseClickAtClientPoint​

MouseClickAtClientPoint(window: Window, x: Integer, y: Integer, button: Integer) → Bool

Hace clic con un botón del mouse en un punto medido desde la esquina superior izquierda del área cliente de una ventana (el interior, sin barra de título ni bordes). El cursor se mueve ahí y permanece.

Parámetros

  • window: Window — La ventana desde cuya área cliente se miden x e y.
  • x: Integer — Distancia desde el borde izquierdo del área cliente, en los píxeles propios de esa ventana, que pueden diferir de los píxeles de pantalla en una ventana que Windows escala según los PPP.
  • y: Integer — Distancia desde el borde superior del área cliente, en los píxeles propios de esa ventana, que pueden diferir de los píxeles de pantalla en una ventana que Windows escala según los PPP.
  • button: Integer — Una constante MouseButton, como MouseButton.Primary. Primary y Secondary siguen la opción de intercambio de botones de Windows; Left y Right son los botones físicos.

Devuelve

true si se envió el clic; false si la ventana no es válida o ya no existe o no se pudo mover el cursor al punto, en cuyo caso no se hace clic, o si Windows bloqueó el clic. Un botón desconocido detiene el script con un error.

1 ejemplo: Hacer clic en un punto dentro de una ventana

MouseDoubleClick​

MouseDoubleClick(x: Integer, y: Integer, button: Integer) → Bool · Simple

Mueve el cursor a un punto de la pantalla y hace doble clic ahí con un botón del mouse. Después, el cursor permanece en ese punto.

Parámetros

  • x: Integer — Posición horizontal en la pantalla donde se hará doble clic, en píxeles.
  • y: Integer — Posición vertical en la pantalla donde se hará doble clic, en píxeles.
  • button: Integer — Una constante MouseButton, como MouseButton.Primary. Primary y Secondary siguen la opción de intercambio de botones de Windows; Left y Right son los botones físicos.

Devuelve

true si se enviaron ambos clics; false si no se pudo mover el cursor al punto, en cuyo caso no se hace clic, o si Windows bloqueó los clics. Un botón desconocido detiene el script con un error.

MouseGetCursorX​

MouseGetCursorX() → Integer

Devuelve la posición horizontal en la pantalla del cursor del mouse.

Parámetros

Sin parámetros.

Devuelve

La posición x del cursor en píxeles de pantalla; negativa en un monitor a la izquierda del principal.

8 ejemplos: Cadena else-if, Mover el mouse en círculo, Leer el color del píxel bajo el cursor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor, Describir lo que está bajo el cursor, Hacer clic en algún lugar y devolver el cursor, Un arrastre por script, Shift+clic

MouseGetCursorY​

MouseGetCursorY() → Integer

Devuelve la posición vertical en la pantalla del cursor del mouse.

Parámetros

Sin parámetros.

Devuelve

La posición y del cursor en píxeles de pantalla; negativa en un monitor por encima del principal.

8 ejemplos: Cadena else-if, Mover el mouse en círculo, Leer el color del píxel bajo el cursor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor, Describir lo que está bajo el cursor, Hacer clic en algún lugar y devolver el cursor, Un arrastre por script, Shift+clic

MouseIsButtonDown​

MouseIsButtonDown(button: Integer) → Bool

Comprueba si un botón del mouse está presionado en este momento.

Parámetros

  • button: Integer — Una constante MouseButton, como MouseButton.Primary. Primary y Secondary siguen la opción de intercambio de botones de Windows; Left y Right son los botones físicos.

Devuelve

true si el botón está presionado; false si está suelto. Un botón desconocido detiene el script con un error.

MouseLockToRect​

MouseLockToRect(x: Integer, y: Integer, width: Integer, height: Integer) → Bool

Limita el cursor del mouse a un rectángulo de la pantalla. El bloqueo sobrevive al script hasta que se llame a MouseUnlock u otro programa lo cambie, así que desbloquee siempre al terminar.

Parámetros

  • x: Integer — Borde izquierdo del rectángulo, en píxeles de pantalla.
  • y: Integer — Borde superior del rectángulo, en píxeles de pantalla.
  • width: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • height: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.

Devuelve

true si el cursor quedó limitado; false si width o height no es positivo o Windows lo rechazó.

1 ejemplo: Confinar el cursor a una ventana durante 5 segundos

MouseMoveTo​

MouseMoveTo(x: Integer, y: Integer) → Bool · Simple

Mueve el cursor del mouse a un punto de la pantalla en cualquier monitor, como si el usuario moviera el mouse.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles.
  • y: Integer — Posición vertical en la pantalla, en píxeles.

Devuelve

true si se envió el movimiento; false si Windows lo bloqueó.

3 ejemplos: Mover el mouse en círculo, Hacer clic en algún lugar y devolver el cursor, Un arrastre por script

MouseScrollHorizontal​

MouseScrollHorizontal(amount: Integer) → Bool · Simple

Gira la rueda horizontal del mouse en la posición actual del cursor. Use primero MouseMoveTo para desplazarse en otro lugar.

Parámetros

  • amount: Integer — Distancia de la rueda, donde 120 es una muesca: un valor positivo desplaza a la derecha y uno negativo a la izquierda. Los valores más pequeños desplazan con más precisión en las aplicaciones que lo admiten.

Devuelve

true si se envió el desplazamiento; false si Windows lo bloqueó.

1 ejemplo: Desplazarse por muescas

MouseScrollVertical​

MouseScrollVertical(amount: Integer) → Bool · Simple

Gira la rueda vertical del mouse en la posición actual del cursor. Use primero MouseMoveTo para desplazarse en otro lugar.

Parámetros

  • amount: Integer — Distancia de la rueda, donde 120 es una muesca: un valor positivo desplaza hacia arriba y uno negativo hacia abajo. Los valores más pequeños desplazan con más precisión en las aplicaciones que lo admiten.

Devuelve

true si se envió el desplazamiento; false si Windows lo bloqueó.

1 ejemplo: Desplazarse por muescas

MouseUnlock​

MouseUnlock() → Bool

Libera el cursor del mouse de cualquier limitación, ya sea establecida por MouseLockToRect o por otro programa.

Parámetros

Sin parámetros.

Devuelve

true si el cursor está libre; false si Windows lo rechazó.

1 ejemplo: Confinar el cursor a una ventana durante 5 segundos

Multimedia​

MultimediaGetMute​

MultimediaGetMute(endpoint: Integer) → Bool

Informa si el dispositivo de reproducción o el micrófono predeterminado que elige endpoint está silenciado en Windows.

Parámetros

  • endpoint: Integer — Qué dispositivo se comprobará: AudioEndpoint.Playback (altavoces o auriculares predeterminados), AudioEndpoint.Capture (micrófono predeterminado) o AudioEndpoint.Communications (el micrófono que Windows usa para las llamadas). Cualquier otro valor detiene la acción con un error.

Devuelve

true si el dispositivo está silenciado; false si no está silenciado o no existe (por ejemplo, no hay ningún micrófono conectado).

1 ejemplo: Alternar el silencio del micrófono

MultimediaGetVolume​

MultimediaGetVolume(endpoint: Integer) → Real

Devuelve el volumen maestro del dispositivo de reproducción o el micrófono predeterminado que elige endpoint, como un Real de 0.0 a 1.0.

Parámetros

  • endpoint: Integer — Qué dispositivo se leerá: AudioEndpoint.Playback (altavoces o auriculares predeterminados), AudioEndpoint.Capture (micrófono predeterminado) o AudioEndpoint.Communications (el micrófono que Windows usa para las llamadas). Cualquier otro valor detiene la acción con un error.

Devuelve

El volumen de 0.0 (silencio) a 1.0 (máximo), en la misma escala que MultimediaSetVolume; 0.0 si el dispositivo no existe.

1 ejemplo: Subir el volumen con indicación en pantalla

MultimediaPlayMp3File​

MultimediaPlayMp3File(path: Text) → Bool · Simple

Empieza a reproducir un archivo MP3 y regresa de inmediato mientras se reproduce. Iniciar otro MP3 detiene el que todavía se está reproduciendo.

Parámetros

  • path: Text — Ruta completa del archivo .mp3, como C:/Music/done.mp3.

Devuelve

true si comenzó la reproducción; false si el archivo no existe, Windows no puede abrirlo ni reproducirlo en 10 segundos, o detener todo terminó la espera.

MultimediaPlayWavFile​

MultimediaPlayWavFile(path: Text) → Bool · Simple

Empieza a reproducir un archivo de sonido .wav y regresa de inmediato mientras se reproduce. Iniciar otro WAV detiene el que todavía se está reproduciendo. Solo funcionan los archivos .wav; use MultimediaPlayMp3File para MP3.

Parámetros

  • path: Text — Ruta completa del archivo .wav, como C:/Windows/Media/chimes.wav.

Devuelve

true si el archivo existe y se inició la reproducción; false si no hay ningún archivo en esa ruta. Un archivo que existe pero no es un WAV reproducible devuelve true y no reproduce nada.

1 ejemplo: Reproducir un sonido

MultimediaSetMute​

MultimediaSetMute(endpoint: Integer, muted: Bool) → Bool · Simple

Silencia o reactiva el sonido del dispositivo de reproducción o el micrófono predeterminado que elige endpoint, como lo hace el botón de silencio del volumen de Windows.

Parámetros

  • endpoint: Integer — Qué dispositivo se cambiará: AudioEndpoint.Playback (altavoces o auriculares predeterminados), AudioEndpoint.Capture (micrófono predeterminado) o AudioEndpoint.Communications (el micrófono que Windows usa para las llamadas). Cualquier otro valor detiene la acción con un error.
  • muted: Bool — true para silenciar el dispositivo; false para reactivar su sonido.

Devuelve

true si se estableció el estado de silencio; false si el dispositivo no existe o rechazó el cambio.

1 ejemplo: Un interruptor que se conserva entre ejecuciones

MultimediaSetVolume​

MultimediaSetVolume(endpoint: Integer, level: Real) → Bool · Simple

Establece el volumen maestro del dispositivo de reproducción o el micrófono predeterminado que elige endpoint en un nivel exacto.

Parámetros

  • endpoint: Integer — Qué dispositivo se cambiará: AudioEndpoint.Playback (altavoces o auriculares predeterminados), AudioEndpoint.Capture (micrófono predeterminado) o AudioEndpoint.Communications (el micrófono que Windows usa para las llamadas). Cualquier otro valor detiene la acción con un error.
  • level: Real — El nuevo volumen de 0.0 (silencio) a 1.0 (máximo); 0.5 equivale a 50 en el control deslizante de volumen de Windows. Los valores fuera del intervalo de 0.0 a 1.0 se ajustan a ese intervalo.

Devuelve

true si se estableció el volumen; false si el dispositivo no existe o rechazó el cambio.

2 ejemplos: Subir el volumen con indicación en pantalla, Convertir una perilla de Arduino en un control de volumen

MultimediaToggleMute​

MultimediaToggleMute(endpoint: Integer) → Bool · Simple

Silencia el dispositivo de reproducción o el micrófono predeterminado que elige endpoint si no está silenciado, o reactiva su sonido si lo está. Llame después a MultimediaGetMute para conocer el nuevo estado.

Parámetros

  • endpoint: Integer — Qué dispositivo se alternará: AudioEndpoint.Playback (altavoces o auriculares predeterminados), AudioEndpoint.Capture (micrófono predeterminado) o AudioEndpoint.Communications (el micrófono que Windows usa para las llamadas). Cualquier otro valor detiene la acción con un error.

Devuelve

true si se cambió el estado de silencio; false si el dispositivo no existe o rechazó el cambio. No es el nuevo estado de silencio.

1 ejemplo: Alternar el silencio del micrófono

Plugin​

PluginSendMessage​

PluginSendMessage(pluginName: Text, message: Text, timeoutSeconds: Integer) → Text

Envía un mensaje de texto a un complemento en ejecución que acepta comandos y espera su respuesta. Un complemento procesa un mensaje a la vez; los mensajes enviados mientras está ocupado esperan en una cola.

Parámetros

  • pluginName: Text — El nombre para mostrar del complemento, con coincidencia exacta, incluidas mayúsculas y minúsculas.
  • message: Text — El texto que se enviará. Su significado depende del complemento.
  • timeoutSeconds: Integer — Cuánto tiempo se esperará la respuesta, en segundos, de 0 a 10; cualquier otro valor detiene el script con un error. Con 0, la llamada regresa de inmediato con texto vacío.

Devuelve

La respuesta del complemento, o texto vacío si no respondió a tiempo. Que no haya ningún complemento en ejecución con ese nombre, una cola llena o un mensaje demasiado largo detiene el script con un error.

1 ejemplo: Comunicarse con un complemento

Region​

RegionGetCellIndexAt​

RegionGetCellIndexAt(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, pointX: Integer, pointY: Integer) → Integer

Divide un rectángulo en una cuadrícula de columnas y filas y devuelve qué celda contiene un punto. Las celdas se numeran desde 0, de izquierda a derecha y luego de arriba abajo.

Parámetros

  • rectX: Integer — Borde izquierdo del rectángulo que se dividirá, en píxeles.
  • rectY: Integer — Borde superior del rectángulo que se dividirá, en píxeles.
  • rectWidth: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • rectHeight: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.
  • columns: Integer — Número de columnas de la cuadrícula. Debe ser mayor que 0. Los píxeles sobrantes se reparten de uno en uno entre las primeras columnas.
  • rows: Integer — Número de filas de la cuadrícula. Debe ser mayor que 0. Los píxeles sobrantes se reparten de uno en uno entre las primeras filas.
  • pointX: Integer — Posición horizontal del punto que se buscará, en los mismos píxeles que rectX.
  • pointY: Integer — Posición vertical del punto que se buscará, en los mismos píxeles que rectY.

Devuelve

El número de celda (fila por columnas, más la columna), o -1 si el punto está fuera del rectángulo o rectWidth, rectHeight, columns o rows no es positivo.

1 ejemplo: Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

RegionGetHeight​

RegionGetHeight(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer

Devuelve el alto de una celda cuando un rectángulo se divide en una cuadrícula de columnas y filas. Los píxeles sobrantes se reparten de uno en uno entre las primeras filas.

Parámetros

  • rectX: Integer — Borde izquierdo del rectángulo que se dividirá, en píxeles.
  • rectY: Integer — Borde superior del rectángulo que se dividirá, en píxeles.
  • rectWidth: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • rectHeight: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.
  • columns: Integer — Número de columnas de la cuadrícula. Debe ser mayor que 0.
  • rows: Integer — Número de filas de la cuadrícula. Debe ser mayor que 0.
  • index: Integer — Número de celda, empezando en cero, contado de izquierda a derecha y luego de arriba abajo, de 0 a columnas por filas menos 1.

Devuelve

El alto de la celda en píxeles, o -1 si index está fuera del intervalo o rectWidth, rectHeight, columns o rows no es positivo.

1 ejemplo: Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

RegionGetWidth​

RegionGetWidth(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer

Devuelve el ancho de una celda cuando un rectángulo se divide en una cuadrícula de columnas y filas. Los píxeles sobrantes se reparten de uno en uno entre las primeras columnas.

Parámetros

  • rectX: Integer — Borde izquierdo del rectángulo que se dividirá, en píxeles.
  • rectY: Integer — Borde superior del rectángulo que se dividirá, en píxeles.
  • rectWidth: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • rectHeight: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.
  • columns: Integer — Número de columnas de la cuadrícula. Debe ser mayor que 0.
  • rows: Integer — Número de filas de la cuadrícula. Debe ser mayor que 0.
  • index: Integer — Número de celda, empezando en cero, contado de izquierda a derecha y luego de arriba abajo, de 0 a columnas por filas menos 1.

Devuelve

El ancho de la celda en píxeles, o -1 si index está fuera del intervalo o rectWidth, rectHeight, columns o rows no es positivo.

1 ejemplo: Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

RegionGetX​

RegionGetX(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer

Devuelve el borde izquierdo de una celda cuando un rectángulo se divide en una cuadrícula de columnas y filas. Los píxeles sobrantes se reparten de uno en uno entre las primeras columnas.

Parámetros

  • rectX: Integer — Borde izquierdo del rectángulo que se dividirá, en píxeles.
  • rectY: Integer — Borde superior del rectángulo que se dividirá, en píxeles.
  • rectWidth: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • rectHeight: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.
  • columns: Integer — Número de columnas de la cuadrícula. Debe ser mayor que 0.
  • rows: Integer — Número de filas de la cuadrícula. Debe ser mayor que 0.
  • index: Integer — Número de celda, empezando en cero, contado de izquierda a derecha y luego de arriba abajo, de 0 a columnas por filas menos 1.

Devuelve

El borde izquierdo de la celda, o -1 si index está fuera del intervalo o rectWidth, rectHeight, columns o rows no es positivo. Una celda real también puede empezar en -1, así que compruebe index primero.

1 ejemplo: Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

RegionGetY​

RegionGetY(rectX: Integer, rectY: Integer, rectWidth: Integer, rectHeight: Integer, columns: Integer, rows: Integer, index: Integer) → Integer

Devuelve el borde superior de una celda cuando un rectángulo se divide en una cuadrícula de columnas y filas. Los píxeles sobrantes se reparten de uno en uno entre las primeras filas.

Parámetros

  • rectX: Integer — Borde izquierdo del rectángulo que se dividirá, en píxeles.
  • rectY: Integer — Borde superior del rectángulo que se dividirá, en píxeles.
  • rectWidth: Integer — Ancho del rectángulo, en píxeles. Debe ser mayor que 0.
  • rectHeight: Integer — Alto del rectángulo, en píxeles. Debe ser mayor que 0.
  • columns: Integer — Número de columnas de la cuadrícula. Debe ser mayor que 0.
  • rows: Integer — Número de filas de la cuadrícula. Debe ser mayor que 0.
  • index: Integer — Número de celda, empezando en cero, contado de izquierda a derecha y luego de arriba abajo, de 0 a columnas por filas menos 1.

Devuelve

El borde superior de la celda, o -1 si index está fuera del intervalo o rectWidth, rectHeight, columns o rows no es positivo. Una celda real también puede empezar en -1, así que compruebe index primero.

1 ejemplo: Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

Serial​

SerialClosePort​

SerialClosePort(port: Text) → Bool

Cierra un puerto COM abierto con SerialOpenPort y lo libera para otros programas, como el IDE de Arduino. Las líneas recibidas que aún no se han leído se descartan.

Parámetros

  • port: Text — El nombre de puerto que se pasó a SerialOpenPort, como COM3. No distingue mayúsculas de minúsculas.

Devuelve

true si el puerto estaba abierto y ahora está cerrado; false si no estaba abierto o lo tiene un monitor serie (use SerialMonitorDelete).

1 ejemplo: Hacer una pregunta a un dispositivo serie

SerialEnumeratePorts​

SerialEnumeratePorts() → Integer

Busca los puertos serie (COM) de este equipo, como un Arduino, un ESP32 o un adaptador USB a serie conectado por USB, y devuelve cuántos hay. Lea cada nombre con SerialGetEnumeratedPortAt.

Parámetros

Sin parámetros.

Devuelve

El número de puertos COM encontrados, o 0 si no hay ninguno.

1 ejemplo: Enumerar los puertos COM

SerialGetEnumeratedPortAt​

SerialGetEnumeratedPortAt(index: Integer) → Text

Devuelve un nombre de puerto, como COM3, de la lista creada por la última llamada a SerialEnumeratePorts en esta ejecución del script. El Administrador de dispositivos muestra qué dispositivo está en cada puerto.

Parámetros

  • index: Integer — Posición en la lista, de 0 al número menos 1. Los nombres se ordenan por número, así que COM3 va antes que COM10.

Devuelve

El nombre del puerto, o texto vacío si index está fuera del intervalo o no se ha llamado a SerialEnumeratePorts.

1 ejemplo: Enumerar los puertos COM

SerialGetTextLine​

SerialGetTextLine(port: Text, timeoutSeconds: Integer, baudRate: Integer) → Text

Espera la siguiente línea completa de un puerto COM y la devuelve, como la lectura de un sensor, el escaneo de un código de barras o la respuesta de un dispositivo. Bloquea el script hasta timeoutSeconds; detener todo termina la espera.

Parámetros

  • port: Text — El nombre del puerto, como COM3. Ábralo primero con SerialOpenPort para elegir la configuración y conservar las líneas que lleguen antes; si no, se abre a baudRate solo para esta espera.
  • timeoutSeconds: Integer — Espera máxima, en segundos. 0 espera hasta que llegue una línea o se detenga el script. Un valor negativo detiene el script con un error.
  • baudRate: Integer — Velocidad en bits por segundo, que solo se usa cuando esta llamada abre el puerto por sí misma, por ejemplo 9600 o 115200; se omite para un puerto abierto con SerialOpenPort. 0 o menos detiene el script con un error.

Devuelve

La línea sin su terminador, o texto vacío si no llegó ninguna línea a tiempo, no se pudo abrir el puerto o se desconectó el dispositivo. Detiene el script con un error si un monitor serie tiene el puerto.

2 ejemplos: Hacer una pregunta a un dispositivo serie, Mantener abierto el puerto de un Arduino y enviarle comandos

SerialMonitorCreate​

SerialMonitorCreate(name: Text, port: Text, baudRate: Integer, parity: Integer, dataBits: Integer, stopBits: Integer, terminator: Text, script: Text) → Bool

Abre un puerto COM y ejecuta un script por cada línea que envía el dispositivo, por ejemplo para convertir una caja de botones con Arduino o un teclado de macros en métodos abreviados. El monitor sigue en ejecución después de que termina este script. Detener todo detiene el script que se ejecuta para una línea y descarta las líneas en espera; el monitor sigue en ejecución.

Parámetros

  • name: Text — Un nombre para el monitor. Reutilizar el nombre del monitor actual de este puerto lo reemplaza; un nombre que ya vigila otro puerto detiene el script con un error. No distingue mayúsculas de minúsculas.
  • port: Text — El nombre del puerto, como COM3. El Administrador de dispositivos muestra en qué puerto está una placa.
  • baudRate: Integer — Velocidad en bits por segundo. Debe coincidir con la del dispositivo, por ejemplo el 9600 o 115200 de Serial.begin en un sketch de Arduino.
  • parity: Integer — Una constante SerialParity. La mayoría de los dispositivos, incluidas las placas Arduino, usan SerialParity.None.
  • dataBits: Integer — Bits por carácter, como número simple. Casi todos los dispositivos usan 8.
  • stopBits: Integer — Una constante SerialStopBits, normalmente SerialStopBits.One. Use la constante: el número simple 1 significa uno y medio bits de parada.
  • terminator: Text — El texto que termina cada línea: se quita de las líneas recibidas y se agrega a cada línea que envía SerialWriteTextLine. Un texto vacío significa CR LF, que es lo que envía Serial.println de Arduino. Use '\n' para los dispositivos que terminan las líneas solo con LF, o '\r' para solo CR.
  • script: Text — El script que se ejecutará por cada línea recibida, como Text. Lee la línea con ContextGetSerialTextLine. Las líneas se ejecutan de una en una, en el orden en que llegaron; hasta 256 líneas esperan mientras se ejecuta el script y, después de eso, se descartan las más antiguas.

Devuelve

true en cuanto el monitor está en ejecución; false si el puerto no existe, está desconectado o lo usa otro programa. Detiene el script con un error si el puerto está abierto con SerialOpenPort o lo vigila un monitor con otro nombre, o si este nombre ya vigila otro puerto. Desconectar el dispositivo termina el monitor y registra una línea en la pestaña Sistema de la consola.

2 ejemplos: Asignar los botones de un dispositivo serie a teclas multimedia, Convertir una perilla de Arduino en un control de volumen

SerialMonitorDelete​

SerialMonitorDelete(name: Text) → Bool

Detiene un monitor serie creado con SerialMonitorCreate y cierra su puerto COM, para que otros programas puedan volver a usar el puerto. Las líneas que aún no se han procesado se descartan; un script que ya está en ejecución termina.

Parámetros

  • name: Text — El nombre que se pasó a SerialMonitorCreate. No distingue mayúsculas de minúsculas.

Devuelve

true si se encontró y se detuvo un monitor con ese nombre; false si no había ninguno.

SerialMonitorDeleteAll​

SerialMonitorDeleteAll() → Bool

Detiene todos los monitores serie y cierra sus puertos COM. Los puertos abiertos con SerialOpenPort siguen abiertos.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

SerialMonitorGetCount​

SerialMonitorGetCount() → Integer

Devuelve cuántos monitores serie están en ejecución y toma una instantánea de sus nombres para SerialMonitorGetEnumeratedNameAt.

Parámetros

Sin parámetros.

Devuelve

El número de monitores serie en ejecución, o 0 si no hay ninguno.

SerialMonitorGetEnumeratedNameAt​

SerialMonitorGetEnumeratedNameAt(index: Integer) → Text

Devuelve un nombre de monitor de la instantánea tomada por la última llamada a SerialMonitorGetCount en esta ejecución del script.

Parámetros

  • index: Integer — Posición en la instantánea, de 0 al número menos 1. El orden no tiene ningún significado.

Devuelve

El nombre del monitor, o texto vacío si index está fuera del intervalo o no se ha llamado a SerialMonitorGetCount.

SerialOpenPort​

SerialOpenPort(port: Text, baudRate: Integer, parity: Integer, dataBits: Integer, stopBits: Integer, terminator: Text) → Bool

Abre un puerto COM y lo mantiene abierto hasta SerialClosePort, y recopila cada línea recibida para SerialGetTextLine. Al abrirlo se activan las señales DTR y RTS, lo que reinicia muchas placas Arduino igual que el IDE de Arduino, así que ábralo una vez y reutilícelo.

Parámetros

  • port: Text — El nombre del puerto, como COM3. El Administrador de dispositivos o SerialEnumeratePorts lo muestran. Un texto vacío detiene el script con un error.
  • baudRate: Integer — Velocidad en bits por segundo. Debe coincidir con la del dispositivo, por ejemplo el 9600 o 115200 de Serial.begin en un sketch de Arduino.
  • parity: Integer — Una constante SerialParity. La mayoría de los dispositivos, incluidas las placas Arduino, usan SerialParity.None.
  • dataBits: Integer — Bits por carácter, como número simple. Casi todos los dispositivos usan 8.
  • stopBits: Integer — Una constante SerialStopBits, normalmente SerialStopBits.One. Use la constante: el número simple 1 significa uno y medio bits de parada.
  • terminator: Text — El texto que termina cada línea: se quita de las líneas recibidas y se agrega a cada línea que envía SerialWriteTextLine. Un texto vacío significa CR LF, que es lo que envía Serial.println de Arduino. Use '\n' para los dispositivos que terminan las líneas solo con LF, o '\r' para solo CR.

Devuelve

true si el puerto está abierto; false si no existe, está desconectado, lo está usando otro programa, como un monitor serie, o rechazó la configuración. Detiene el script con un error si Input.Observer ya tiene abierto el puerto o lo tiene un monitor serie.

2 ejemplos: Hacer una pregunta a un dispositivo serie, Mantener abierto el puerto de un Arduino y enviarle comandos

SerialWriteTextLine​

SerialWriteTextLine(port: Text, text: Text, baudRate: Integer) → Bool

Envía una línea de texto más el final de línea del puerto a un puerto COM, como un comando para un Arduino o una línea de G-code para una impresora 3D. Funciona en un puerto abierto con SerialOpenPort o que tiene un monitor serie, así que el script de un monitor puede responder a su dispositivo. Un puerto que no está abierto se abre a baudRate, 8-N-1, solo para esta escritura.

Parámetros

  • port: Text — El nombre del puerto, como COM3. Ábralo primero con SerialOpenPort para elegir la configuración y evitar reiniciar las placas que se restablecen al abrirse el puerto.
  • text: Text — La línea que se enviará, codificada como UTF-8. No agregue un final de línea: se agrega el terminador con el que se abrió el puerto, o CR LF cuando esta llamada abre el puerto por sí misma.
  • baudRate: Integer — Velocidad en bits por segundo, que solo se usa cuando esta llamada abre el puerto por sí misma, por ejemplo 9600 o 115200; se omite para un puerto que ya está abierto o monitoreado. 0 o menos detiene el script con un error.

Devuelve

true si se envió la línea; false si no se pudo abrir el puerto o la escritura falló o agotó el tiempo de espera.

2 ejemplos: Hacer una pregunta a un dispositivo serie, Mantener abierto el puerto de un Arduino y enviarle comandos

Shell​

ShellEmptyRecycleBins​

ShellEmptyRecycleBins() → Bool · Simple

Elimina de forma permanente todo lo que hay en la Papelera de reciclaje de todas las unidades, sin pedir confirmación. No se puede deshacer.

Parámetros

Sin parámetros.

Devuelve

true si se vaciaron las papeleras de reciclaje o ya estaban vacías; false en caso contrario.

ShellEnumerateProcessIdsByExeRegex​

ShellEnumerateProcessIdsByExeRegex(pattern: Text) → Integer

Busca todos los procesos en ejecución cuyo nombre de archivo de programa, como notepad.exe, coincide con una expresión regular, y devuelve cuántos hay. Lea cada id. de proceso con ShellGetEnumeratedProcessIdAt.

Parámetros

  • pattern: Text — Una expresión regular, que se compara sin distinguir mayúsculas de minúsculas solo con el nombre de archivo, no con la ruta completa. Use ^ y $ para que coincida el nombre completo, como ^notepad[.]exe$.

Devuelve

El número de procesos que coinciden, o 0 si ninguno coincide. Un patrón no válido detiene el script con un error.

1 ejemplo: Del proceso a la ventana

ShellExpandEnvironmentVariables​

ShellExpandEnvironmentVariables(text: Text) → Text

Reemplaza cada variable de entorno del texto, escrita como un nombre entre dos signos de porcentaje, como USERPROFILE o TEMP, por su valor. Útil para crear rutas que funcionen en cualquier PC.

Parámetros

  • text: Text — Texto que contiene nombres de variables de entorno entre signos de porcentaje, como una ruta en la carpeta del perfil del usuario.

Devuelve

El texto con todas las variables conocidas reemplazadas; las variables desconocidas se dejan como están escritas. Texto vacío si la expansión falla.

8 ejemplos: La fecha de hoy y un nombre de archivo con marca de tiempo, Capturar el área que encerró en un círculo, Guardar en un archivo una imagen copiada, Agregar a un archivo de registro, Contar los tipos de archivo de una carpeta, Hacer una copia de seguridad de un archivo antes de editarlo, Vigilar una carpeta, Expandir variables de entorno

ShellGetEnumeratedProcessIdAt​

ShellGetEnumeratedProcessIdAt(index: Integer) → Integer

Devuelve un id. de proceso de la lista creada por la última llamada a ShellEnumerateProcessIdsByExeRegex en esta ejecución del script.

Parámetros

  • index: Integer — Posición en la lista, de 0 al número menos 1.

Devuelve

El id. de proceso, o 0 si index está fuera del intervalo o no se ha llamado a ShellEnumerateProcessIdsByExeRegex.

1 ejemplo: Del proceso a la ventana

ShellGetSystemMetricsByIndex​

ShellGetSystemMetricsByIndex(index: Integer) → Integer

Devuelve una medida o configuración del sistema de Windows por su índice de GetSystemMetrics, como 0 para el ancho de la pantalla principal u 80 para el número de monitores.

Parámetros

  • index: Integer — Un número de índice SM_ de Windows, como 0 (SM_CXSCREEN) o 1 (SM_CYSCREEN). No hay constantes con nombre para estos valores.

Devuelve

El valor que informa Windows, a menudo en píxeles, o 0 para un índice desconocido.

ShellRun​

ShellRun(command: Text) → Bool · Simple

Ejecuta un programa o abre un archivo, una carpeta o una dirección web, como si se escribiera en el cuadro Ejecutar de Windows (Win+R). No espera a que el programa termine.

Parámetros

  • command: Text — Un nombre de programa como notepad.exe, una ruta o una dirección web, seguidos opcionalmente de argumentos. Ponga entre comillas simples una ruta que contenga espacios cuando la sigan argumentos.

Devuelve

true si Windows lo inició; false si no se pudo encontrar o iniciar. Si falla, no se muestra ningún cuadro de error de Windows.

4 ejemplos: Bucle while: esperar una ventana, con tiempo de espera, Iniciar un programa, esperar su ventana y actuar sobre ella, Buscar en la web el texto seleccionado, Buscar en la web la selección

ShellRunOrActivate​

ShellRunOrActivate(exeName: Text) → Bool · Simple

Trae al frente la ventana de un programa si el programa ya está en ejecución, o ejecuta el comando si no lo está. Útil para un gesto que siempre lo lleve al mismo programa.

Parámetros

  • exeName: Text — El nombre de archivo del programa, como notepad o notepad.exe, o su ruta completa, seguido opcionalmente de argumentos que solo se usan cuando hay que iniciarlo. Las ventanas en ejecución se buscan por el nombre de archivo de la primera palabra, con .exe agregado cuando no tiene extensión; ponga entre comillas simples una ruta que contenga espacios.

Devuelve

true si se trajo una ventana al frente o se inició el programa; false si Windows se negó a traer la ventana al frente o el inicio falló.

1 ejemplo: Iniciar una aplicación o cambiar a ella

ShellRunProgram​

ShellRunProgram(path: Text, arguments: Text, verb: Any, windowStyle: Integer, waitForExit: Bool) → Bool

Ejecuta un programa o abre un archivo con la acción (verbo) y el estilo de ventana elegidos, y puede esperar a que se cierre. Use ShellVerb.RunAs para ejecutar un programa como administrador.

Parámetros

  • path: Text — El programa, documento o carpeta que se abrirá, como notepad.exe o una ruta de archivo completa.
  • arguments: Text — Argumentos de línea de comandos para el programa, o texto vacío si no hay ninguno.
  • verb: Any — Una constante ShellVerb, como ShellVerb.Open o ShellVerb.Print, o cualquier verbo que admita el tipo de archivo, como Text. Un texto vacío usa la acción predeterminada.
  • windowStyle: Integer — Una constante WindowStyle: WindowStyle.Normal, WindowStyle.Minimized, WindowStyle.Maximized o WindowStyle.Hidden. Cualquier otro valor detiene el script con un error. Algunos programas la omiten.
  • waitForExit: Bool — true para bloquear el script hasta que el programa se cierre; detener todo termina la espera y deja el programa en ejecución. false para continuar de inmediato.

Devuelve

true si Windows lo inició (y, con waitForExit, ya se cerró); false si no se pudo iniciar, se rechazó la solicitud de administrador o detener todo terminó la espera. Si falla, no se muestra ningún cuadro de error de Windows.

2 ejemplos: Ejecutar un programa con un verbo y un estilo de ventana, Ejecutar y esperar a que termine

ShellRunStoreApp​

ShellRunStoreApp(packageName: Text) → Bool · Simple

Inicia una aplicación instalada de Microsoft Store por su nombre de paquete completo o parcial, o por su nombre en el menú Inicio, como Microsoft.WindowsCalculator o Calculadora. No se buscan los programas de escritorio normales; use ShellRun para ellos.

Parámetros

  • packageName: Text — El nombre de familia de paquete de la aplicación, completo o parcial, o su nombre exacto en el menú Inicio, que se compara sin distinguir mayúsculas de minúsculas. Tiene prioridad un nombre de familia de paquete exacto, luego un nombre exacto del menú Inicio y luego la primera aplicación cuyo nombre de familia de paquete contiene el texto.

Devuelve

true si se inició la aplicación; false si packageName está vacío, ninguna aplicación de Store instalada coincide o el inicio falló.

ShellShowToast​

ShellShowToast(title: Text, message: Text) → Bool · Simple

Muestra una notificación de Windows (notificación del sistema) con un título y un mensaje. Solo espera hasta que Windows la acepte, no hasta que se descarte.

Parámetros

  • title: Text — La primera línea, en negrita, de la notificación.
  • message: Text — El texto que se muestra debajo del título.

Devuelve

true si se mostró la notificación; false si las notificaciones están desactivadas en la configuración General, Windows la rechazó o detener todo terminó la espera.

9 ejemplos: Fijar una ventana encima, Capturar el área que encerró en un círculo, Guardar en un archivo una imagen copiada, Un interruptor que se conserva entre ejecuciones, Una notificación de Windows, Alternar el silencio del micrófono, Ejecutar y esperar a que termine, Pasar al siguiente perfil de gestos, Estado del motor

ShellTerminateProcess​

ShellTerminateProcess(processId: Integer) → Bool

Termina un proceso de inmediato, como Finalizar tarea en el Administrador de tareas. Se pierde el trabajo sin guardar de ese programa.

Parámetros

  • processId: Integer — El id. de proceso, por ejemplo de WindowGetProcessId o ShellGetEnumeratedProcessIdAt. 0 o menos, el propio proceso de Input.Observer y los procesos del sistema de Windows detienen el script con un error.

Devuelve

true si se terminó el proceso; false si ya había finalizado o Windows denegó el acceso, por ejemplo para un programa que se ejecuta como administrador.

Snippet​

SnippetExecuteScript​

SnippetExecuteScript(name: Text) → Bool · Simple

Ejecuta el snippet con este nombre y espera hasta que termine. El snippet ve el contexto del disparador de quien lo llama, pero tiene sus propias variables.

Parámetros

  • name: Text — El nombre del snippet, con coincidencia exacta, incluidas mayúsculas y minúsculas.

Devuelve

true si el snippet se ejecutó hasta el final; false si ningún snippet tiene ese nombre, o el snippet está vacío, tiene un error o se detuvo.

1 ejemplo: Snippets como funciones reutilizables

SnippetGetScript​

SnippetGetScript(name: Text) → Text

Devuelve el texto del script del snippet con este nombre sin ejecutarlo, por ejemplo para pasarlo a TimerCreate.

Parámetros

  • name: Text — El nombre del snippet, con coincidencia exacta, incluidas mayúsculas y minúsculas.

Devuelve

El texto del script del snippet, o texto vacío si ningún snippet tiene ese nombre.

1 ejemplo: Script de temporizador desde un snippet, sin secuencias de escape

Storage​

StorageClearAll​

StorageClearAll() → Bool

Quita todos los valores almacenados con StorageSetValue, para todas las acciones. Los valores persistentes no se ven afectados.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

StorageClearAllPersistent​

StorageClearAllPersistent() → Bool

Quita todos los valores persistentes y los borra de storage.toml, para que ninguno vuelva después de reiniciar. Los valores almacenados con StorageSetValue no se ven afectados.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

StorageClearPersistentValue​

StorageClearPersistentValue(key: Text) → Bool

Quita un valor persistente y lo borra de storage.toml. No ocurre nada si la clave no está almacenada.

Parámetros

  • key: Text — El nombre del valor que se quitará. Las mayúsculas y las minúsculas se consideran distintas.

Devuelve

Siempre true, esté o no almacenada la clave.

StorageClearValue​

StorageClearValue(key: Text) → Bool

Quita un valor almacenado con StorageSetValue. No ocurre nada si la clave no está almacenada.

Parámetros

  • key: Text — El nombre del valor que se quitará. Las mayúsculas y las minúsculas se consideran distintas.

Devuelve

Siempre true, esté o no almacenada la clave.

StorageGetPersistentValue​

StorageGetPersistentValue(key: Text) → Any

Lee un valor guardado con StorageSetPersistentValue, incluido uno guardado antes del último reinicio de Input.Observer.

Parámetros

  • key: Text — El nombre con el que se guardó el valor. Las mayúsculas y las minúsculas se consideran distintas.

Devuelve

El valor almacenado con su tipo (Bool, Integer, Real o Text), o Integer 0 si la clave no está almacenada. Use StorageHasPersistentValue para distinguir una clave que falta de un 0 almacenado.

1 ejemplo: Un contador que se conserva después de un reinicio

StorageGetValue​

StorageGetValue(key: Text) → Any

Lee un valor almacenado con StorageSetValue por esta o cualquier otra acción desde que se inició Input.Observer.

Parámetros

  • key: Text — El nombre con el que se almacenó el valor. Las mayúsculas y las minúsculas se consideran distintas.

Devuelve

El valor almacenado con su tipo (Bool, Integer, Real, Text o Window), o Integer 0 si la clave no está almacenada. Use StorageHasValue para distinguir una clave que falta de un 0 almacenado.

5 ejemplos: && y || evalúan ambos lados, Un temporizador repetitivo que cuenta, Un interruptor que se conserva entre ejecuciones, Una lista guardada en Storage, Snippets como funciones reutilizables

StorageHasPersistentValue​

StorageHasPersistentValue(key: Text) → Bool

Comprueba si hay un valor persistente almacenado con un nombre. Úsela para distinguir una clave que falta de un 0, un false o un texto vacío almacenados.

Parámetros

  • key: Text — El nombre que se buscará. Las mayúsculas y las minúsculas se consideran distintas.

Devuelve

true si hay un valor persistente almacenado con key; false si no.

StorageHasValue​

StorageHasValue(key: Text) → Bool

Comprueba si hay un valor almacenado con un nombre mediante StorageSetValue. Úsela para distinguir una clave que falta de un 0, un false o un texto vacío almacenados.

Parámetros

  • key: Text — El nombre que se buscará. Las mayúsculas y las minúsculas se consideran distintas.

Devuelve

true si hay un valor almacenado con key; false si no.

StorageSetPersistentValue​

StorageSetPersistentValue(key: Text, value: Any) → Bool

Guarda un valor con un nombre que sobrevive a un reinicio, en storage.toml junto al archivo de configuración. El archivo es texto sin formato y nunca se cifra: no guarde ahí contraseñas ni otros secretos.

Parámetros

  • key: Text — El nombre con el que se guardará, de hasta 256 caracteres. Las mayúsculas y las minúsculas se consideran distintas. Reemplaza cualquier valor ya almacenado con ese nombre.
  • value: Any — El valor que se guardará: un Bool, Integer, Real o Text (de hasta 32,768 caracteres). Se recupera con el mismo tipo. No se puede guardar un Window.

Devuelve

true en cuanto el valor está almacenado. false si storage.toml existía pero no se pudo leer al iniciar: entonces el guardado queda desactivado hasta el siguiente inicio, y el valor solo se conserva hasta que Input.Observer se cierra. Un valor de ventana, una clave de más de 256 caracteres, un Text de más de 32,768 caracteres o una clave nueva que supere los 1,024 valores almacenados detiene la acción con un error.

1 ejemplo: Un contador que se conserva después de un reinicio

StorageSetValue​

StorageSetValue(key: Text, value: Any) → Bool

Almacena un valor con un nombre para que las siguientes ejecuciones de esta o cualquier otra acción puedan leerlo. Los valores se conservan hasta que Input.Observer se cierra; use StorageSetPersistentValue para conservar uno entre reinicios.

Parámetros

  • key: Text — El nombre con el que se almacenará, de hasta 256 caracteres. Las mayúsculas y las minúsculas se consideran distintas. Reemplaza cualquier valor ya almacenado con ese nombre, sea cual sea su tipo.
  • value: Any — El valor que se almacenará: un Bool, Integer, Real, Text (de hasta 32,768 caracteres) o Window. Se recupera con el mismo tipo.

Devuelve

true en cuanto el valor está almacenado. Una clave de más de 256 caracteres, un Text de más de 32,768 caracteres o una clave nueva que supere los 1,024 valores almacenados detiene la acción con un error.

5 ejemplos: && y || evalúan ambos lados, Un temporizador repetitivo que cuenta, Un interruptor que se conserva entre ejecuciones, Una lista guardada en Storage, Snippets como funciones reutilizables

String​

StringContains​

StringContains(text: Text, search: Text) → Bool

Comprueba si un texto contiene otro fragmento de texto en cualquier posición. Las mayúsculas y minúsculas deben coincidir; use StringToLower en ambos para una comprobación que no las distinga.

Parámetros

  • text: Text — El texto en el que se buscará.
  • search: Text — El texto que se buscará.

Devuelve

true si search aparece en text, o si search está vacío; false en caso contrario.

1 ejemplo: Comparaciones sin distinguir mayúsculas de minúsculas

StringEndsWith​

StringEndsWith(text: Text, suffix: Text) → Bool

Comprueba si un texto termina con un fragmento de texto dado, como una extensión de archivo. Las mayúsculas y minúsculas deben coincidir.

Parámetros

  • text: Text — El texto que se comprobará.
  • suffix: Text — La terminación que se buscará, como '.pdf'.

Devuelve

true si text termina con suffix, o si suffix está vacío; false en caso contrario.

1 ejemplo: Contar los tipos de archivo de una carpeta

StringFormat​

StringFormat(format: Text, value0: Any, value1: Any) → Text

Crea texto reemplazando cada {0} de format por value0 y cada {1} por value1. Así es como se convierte un número, un Bool o una ventana en Text.

Parámetros

  • format: Text — El texto con los marcadores de posición {0} y {1}. No existe {2}; anide llamadas para más valores. {0} se reemplaza primero, así que un {1} dentro de value0 también se reemplaza.
  • value0: Any — El valor para {0}, de cualquier tipo.
  • value1: Any — El valor para {1}, de cualquier tipo. Pase un texto vacío si format no tiene {1}.

Devuelve

El texto de format con los marcadores de posición reemplazados. Un Real muestra seis decimales; true y false se muestran como palabras.

50 ejemplos: Los cinco tipos de valor, Bucles de conteo: hacia arriba, hacia abajo y por saltos, Bucles anidados: una tabla de multiplicar, while (true) con una marca de salida, Sorpresas de precedencia, && y || evalúan ambos lados, Igualdad entre tipos, La aritmética de tipos mixtos da 0, Comentarios, instrucciones vacías y bloques, División de Integer frente a Real, y división entre cero, Resto sin %, Redondeo y funciones integradas matemáticas de Real, Limitar un valor a un intervalo, Números aleatorios y un volado, Longitud del trazo de un gesto, Dar formato a un Real sin seis decimales, Máscaras de marcas: activar, borrar, alternar, comprobar, Leer el color del píxel bajo el cursor, Contar los bits activos, Casos límite del desplazamiento, Intercambiar dos Integer, Bits de estado de tecla, Dar formato a más de dos valores, Dividir y recorrer, Divisiones anidadas: pares clave=valor, Último índice de: una extensión de archivo, Rellenar un número con ceros, Contar las palabras del portapapeles, El orden del texto es ordinal, Constantes con nombre frente a números sin procesar, Enumerar las ventanas de nivel superior visibles, Minimizar todas las ventanas de una aplicación, Cerrar ventanas por patrón de título, después de confirmar, Inspeccionar los controles secundarios de una ventana, Del proceso a la ventana, Describir lo que está bajo el cursor, Todo lo que sabe el contexto del disparador, Agregar a un archivo de registro, Leer un archivo y contar sus líneas, Contar los tipos de archivo de una carpeta, Un temporizador repetitivo que cuenta, Un contador que se conserva después de un reinicio, Una lista guardada en Storage, Subir el volumen con indicación en pantalla, Un mensaje en pantalla que se actualiza en vivo, Una notificación de Windows, Enumerar los monitores, Estado del motor, Snippets como funciones reutilizables, Mantener abierto el puerto de un Arduino y enviarle comandos

StringFromNumber​

StringFromNumber(number: Any, decimals: Integer, invariantCulture: Bool) → Text

Convierte un número en texto, ya sea en el formato regional del usuario con separadores de miles para mostrarlo, o en un formato fijo para máquinas destinado a archivos y dispositivos.

Parámetros

  • number: Any — El Integer o Real que se convertirá.
  • decimals: Integer — Cuántos dígitos después del separador decimal, de 0 a 15, con redondeo; o -1 para tantos como necesite el valor (ninguno para un Integer).
  • invariantCulture: Bool — true para texto de máquina: punto como separador decimal, sin separadores de miles, que se puede volver a leer con StringToNumber(text, true). false para el formato regional del usuario.

Devuelve

El número como texto, como 1,234.50 o 1234.5. Texto vacío si un Real no es un número finito. Un valor que no es un número, o un decimals fuera del intervalo, detiene la acción con un error.

1 ejemplo: Leer un número que escribió alguien

StringGetIndexOf​

StringGetIndexOf(text: Text, search: Text) → Integer

Busca dónde aparece por primera vez un fragmento de texto dentro de otro. Las mayúsculas y minúsculas deben coincidir. Las posiciones empiezan en 0.

Parámetros

  • text: Text — El texto en el que se buscará.
  • search: Text — El texto que se buscará.

Devuelve

La posición, empezando en 0, de la primera aparición, 0 si search está vacío, o -1 si search no aparece en text.

1 ejemplo: && y || evalúan ambos lados

StringGetLength​

StringGetLength(text: Text) → Integer

Devuelve el número de caracteres de un texto, incluidos los espacios y los saltos de línea. Las posiciones que usa StringGetSubstring se cuentan de la misma manera.

Parámetros

  • text: Text — El texto que se medirá.

Devuelve

El número de caracteres, o 0 para un texto vacío. Algunos emojis y caracteres poco comunes cuentan como 2.

3 ejemplos: Último índice de: una extensión de archivo, Rellenar un número con ceros, Invertir un Text

StringGetSplitPartAt​

StringGetSplitPartAt(index: Integer) → Text

Devuelve una parte de la llamada más reciente a StringSplit en esta ejecución del script.

Parámetros

  • index: Integer — El número de parte, empezando en 0, de 0 al número que devolvió StringSplit menos 1.

Devuelve

El texto de la parte, o texto vacío si index está fuera del intervalo o no se ha llamado a StringSplit en esta ejecución.

6 ejemplos: break y continue, Dividir y recorrer, Divisiones anidadas: pares clave=valor, Contar las palabras del portapapeles, Unir las líneas del portapapeles en una sola, Leer un archivo y contar sus líneas

StringGetSubstring​

StringGetSubstring(text: Text, start: Integer, length: Integer) → Text

Devuelve parte de un texto: hasta length caracteres, a partir de la posición start. Las posiciones empiezan en 0.

Parámetros

  • text: Text — El texto del que se tomará la parte.
  • start: Integer — La posición, empezando en 0, del primer carácter que se tomará. No debe ser negativa.
  • length: Integer — El número máximo de caracteres que se tomarán. No debe ser negativo.

Devuelve

La parte solicitada, más corta si el texto termina antes, o texto vacío si start está en el final o más allá. Un start o un length negativo detiene la acción con un error.

4 ejemplos: && y || evalúan ambos lados, De Integer a texto hexadecimal, Último índice de: una extensión de archivo, Invertir un Text

StringIsNumber​

StringIsNumber(text: Text, invariantCulture: Bool) → Bool

Comprueba si un texto es un número que StringToNumber puede leer, como lo que un usuario escribió en UIShowInputBox. Se omiten los espacios alrededor del número.

Parámetros

  • text: Text — El texto que se comprobará.
  • invariantCulture: Bool — true para texto de máquina: punto como separador decimal y sin separadores de miles. false para el formato regional del usuario, tal como lo escribiría una persona; entonces los grupos de dígitos deben seguir los tamaños de grupo de ese formato.

Devuelve

true si text es un número en el formato elegido; false en caso contrario, incluso para un texto vacío.

2 ejemplos: Leer un número que escribió alguien, Convertir una perilla de Arduino en un control de volumen

StringRegexGetGroupAt​

StringRegexGetGroupAt(index: Integer) → Text

Devuelve la coincidencia completa o un grupo de captura de la llamada correcta más reciente a StringRegexMatch en esta ejecución del script.

Parámetros

  • index: Integer — 0 para la coincidencia completa; 1 o más para los grupos de captura, en el orden en que aparecen sus paréntesis de apertura. Los grupos con nombre también se numeran.

Devuelve

El texto que coincidió, o texto vacío si index está fuera del intervalo, el grupo no participó en la coincidencia o el último StringRegexMatch no encontró ninguna coincidencia.

1 ejemplo: Extraer un valor de un texto copiado con una expresión regular

StringRegexMatch​

StringRegexMatch(text: Text, pattern: Text) → Bool

Comprueba si una expresión regular (sintaxis PCRE2) coincide en alguna parte del texto, y recuerda la coincidencia y sus grupos para StringRegexGetGroupAt.

Parámetros

  • text: Text — El texto en el que se buscará.
  • pattern: Text — La expresión regular. Distingue mayúsculas de minúsculas; empiécela con (?i) para no distinguirlas. Las clases de caracteres, como las de palabra y dígito, siguen Unicode.

Devuelve

true si el patrón coincide; false si no. Un patrón no válido, o uno que necesita demasiados pasos con este texto, detiene la acción con un error.

1 ejemplo: Extraer un valor de un texto copiado con una expresión regular

StringRegexReplace​

StringRegexReplace(text: Text, pattern: Text, replacement: Text) → Text

Reemplaza cada coincidencia de una expresión regular (sintaxis PCRE2) en el texto por un reemplazo que puede incluir los grupos que coincidieron.

Parámetros

  • text: Text — El texto que se cambiará.
  • pattern: Text — La expresión regular. Distingue mayúsculas de minúsculas; empiécela con (?i) para no distinguirlas.
  • replacement: Text — El texto que se pondrá en lugar de cada coincidencia. $1 o ${1} inserta el grupo 1, ${name} un grupo con nombre, $0 la coincidencia completa y $$ un signo de dólar literal.

Devuelve

El texto con cada coincidencia reemplazada, o el texto sin cambios si nada coincide. Un patrón o un reemplazo no válido, demasiados pasos o un resultado de más de 16 millones de caracteres detiene la acción con un error.

1 ejemplo: Extraer un valor de un texto copiado con una expresión regular

StringReplace​

StringReplace(text: Text, search: Text, replacement: Text) → Text

Reemplaza cada aparición de un fragmento de texto por otro. Las mayúsculas y minúsculas deben coincidir. La búsqueda es texto literal, no un patrón.

Parámetros

  • text: Text — El texto que se cambiará.
  • search: Text — El texto que se buscará. No debe estar vacío.
  • replacement: Text — El texto que se pondrá en su lugar. Puede estar vacío para quitar cada aparición.

Devuelve

El texto con cada aparición reemplazada, o el texto sin cambios si search no aparece. Un search vacío detiene la acción con un error.

3 ejemplos: Contar las palabras del portapapeles, Rellenar una plantilla y pegarla, Buscar en la web la selección

StringSplit​

StringSplit(text: Text, delimiter: Text) → Integer

Divide un texto en partes en cada aparición de un delimitador y recuerda las partes para StringGetSplitPartAt. Los delimitadores contiguos, o uno en cualquiera de los extremos, producen partes vacías.

Parámetros

  • text: Text — El texto que se dividirá.
  • delimiter: Text — El texto literal por el que se dividirá, como ',' o un salto de línea. No debe estar vacío.

Devuelve

El número de partes, al menos 1. Un delimitador vacío detiene la acción con un error.

6 ejemplos: break y continue, Dividir y recorrer, Divisiones anidadas: pares clave=valor, Contar las palabras del portapapeles, Unir las líneas del portapapeles en una sola, Leer un archivo y contar sus líneas

StringStartsWith​

StringStartsWith(text: Text, prefix: Text) → Bool

Comprueba si un texto empieza con un fragmento de texto dado. Las mayúsculas y minúsculas deben coincidir.

Parámetros

  • text: Text — El texto que se comprobará.
  • prefix: Text — El comienzo que se buscará.

Devuelve

true si text empieza con prefix, o si prefix está vacío; false en caso contrario.

2 ejemplos: break y continue, Leer un archivo y contar sus líneas

StringToLower​

StringToLower(text: Text) → Text

Convierte un texto a minúsculas, según las reglas de mayúsculas y minúsculas del formato regional de Windows del usuario (por ejemplo, la i con punto y sin punto del turco).

Parámetros

  • text: Text — El texto que se convertirá.

Devuelve

El texto en minúsculas, o el texto sin cambios si Windows no puede convertirlo.

4 ejemplos: Comparaciones sin distinguir mayúsculas de minúsculas, El orden del texto es ordinal, Dejar pasar un dibujo no reconocido, Contar los tipos de archivo de una carpeta

StringToNumber​

StringToNumber(text: Text, invariantCulture: Bool) → Any

Lee un número de un texto, como una entrada del usuario, un archivo o un dispositivo serie. Se omiten los espacios alrededor del número; se permite un exponente como 1.5e3.

Parámetros

  • text: Text — El texto que se leerá.
  • invariantCulture: Bool — true para texto de máquina: punto como separador decimal y sin separadores de miles, así que '1,5' no es un número. false para el formato regional del usuario, tal como lo escribiría una persona; entonces los grupos de dígitos deben seguir ese formato, así que '1,234.5' se lee en español (México) pero '1,5' no.

Devuelve

Un Integer si el texto no tiene separador decimal ni exponente y cabe; si no, un Real. 0 si el texto no es un número; compruébelo primero con StringIsNumber.

2 ejemplos: Leer un número que escribió alguien, Convertir una perilla de Arduino en un control de volumen

StringToUpper​

StringToUpper(text: Text) → Text

Convierte un texto a mayúsculas, según las reglas de mayúsculas y minúsculas del formato regional de Windows del usuario (por ejemplo, la i con punto y sin punto del turco).

Parámetros

  • text: Text — El texto que se convertirá.

Devuelve

El texto en mayúsculas, o el texto sin cambios si Windows no puede convertirlo.

2 ejemplos: Pasar a mayúsculas el texto seleccionado, Hacer una copia de seguridad de un archivo antes de editarlo

StringTrim​

StringTrim(text: Text) → Text

Quita los espacios, tabulaciones, saltos de línea y otros espacios en blanco del principio y del final de un texto. Los espacios en blanco dentro del texto se conservan.

Parámetros

  • text: Text — El texto que se recortará.

Devuelve

El texto recortado, o texto vacío si el texto solo contenía espacios en blanco.

6 ejemplos: Contar las palabras del portapapeles, Unir las líneas del portapapeles en una sola, Buscar en la web el texto seleccionado, Buscar en la web la selección, Leer un archivo y contar sus líneas, Asignar los botones de un dispositivo serie a teclas multimedia

StringUrlEncode​

StringUrlEncode(text: Text) → Text · Simple

Codifica un texto para que pueda ir dentro de una dirección web, por ejemplo un término de búsqueda creado a partir del texto seleccionado. Codifique solo el valor, no la dirección completa.

Parámetros

  • text: Text — El texto que se codificará, como un término de búsqueda.

Devuelve

El texto codificado: las letras, los dígitos y - . _ ~ se quedan como están; cualquier otro byte del texto UTF-8 se convierte en un signo de porcentaje seguido de dos dígitos hexadecimales. Un espacio se convierte en el signo de porcentaje seguido de 20, no en un signo más.

1 ejemplo: Buscar en la web el texto seleccionado

Style​

StyleGetCurrent​

StyleGetCurrent() → Text · Simple

Devuelve la clave del estilo de trazo que dibuja ahora el complemento renderizador, como neonglow, o shuffle cuando está seleccionado Aleatorio.

Parámetros

Sin parámetros.

Devuelve

La clave del estilo, el estilo predeterminado del renderizador cuando no hay nada utilizable seleccionado, o texto vacío cuando no hay ningún renderizador en ejecución o todavía no ha informado sus estilos.

StyleNext​

StyleNext() → Bool · Simple

Selecciona el siguiente estilo de trazo desbloqueado de la lista del renderizador y vuelve al principio al llegar al final. El nuevo estilo se dibuja a partir del siguiente gesto.

Parámetros

Sin parámetros.

Devuelve

true si se solicitó un cambio de estilo; false cuando no hay ningún renderizador en ejecución o no hay otro estilo que seleccionar.

StyleSet​

StyleSet(key: Text) → Bool · Simple

Selecciona el estilo de trazo del renderizador que tiene esta clave, que se dibuja a partir del siguiente gesto. Un botón de dibujo que tiene su propio estilo lo conserva.

Parámetros

  • key: Text — La clave del estilo, como neonglow o auto; no distingue mayúsculas de minúsculas. Use shuffle para un estilo distinto en cada gesto.

Devuelve

true si se solicitó el cambio de estilo; false si no hay ningún renderizador en ejecución, ningún estilo tiene esa clave o el estilo está bloqueado.

System​

SystemHibernate​

SystemHibernate() → Bool · Simple

Hiberna el equipo sin preguntar. El script espera aquí y continúa después de que el equipo se vuelve a encender. No hace nada si la hibernación está desactivada en Windows.

Parámetros

Sin parámetros.

Devuelve

true después de que el equipo hibernó y se reanudó; false si la hibernación no está disponible o Windows lo rechazó.

SystemLock​

SystemLock() → Bool · Simple

Bloquea el equipo y muestra la pantalla de inicio de sesión de Windows, como lo hace Windows+L. Las aplicaciones siguen en ejecución.

Parámetros

Sin parámetros.

Devuelve

true si Windows bloqueó el equipo; false si Windows lo rechazó, por ejemplo porque una directiva deshabilita el bloqueo.

SystemMonitorOff​

SystemMonitorOff() → Bool · Simple

Apaga los monitores. El siguiente movimiento del mouse o pulsación de tecla los vuelve a encender, así que un script iniciado por un gesto debe llamar primero a UtilityWait(500).

Parámetros

Sin parámetros.

Devuelve

true en cuanto se envió la solicitud a Windows; false si no se pudo enviar.

SystemRestart​

SystemRestart(force: Bool) → Bool · Simple

Reinicia el equipo sin pedir confirmación; Windows cierra primero las aplicaciones en ejecución. Muestre antes UIShowMessageBox si desea confirmar.

Parámetros

  • force: Bool — false permite que las aplicaciones pidan guardar el trabajo sin guardar (solo se cierran a la fuerza las aplicaciones que no responden); true cierra todas las aplicaciones de inmediato y se pierde el trabajo sin guardar.

Devuelve

true si Windows aceptó la solicitud de reinicio (luego continúa por su cuenta); false si Windows la rechazó.

SystemShutDown​

SystemShutDown(force: Bool) → Bool · Simple

Apaga el equipo sin pedir confirmación. Muestre antes UIShowMessageBox si desea confirmar.

Parámetros

  • force: Bool — false permite que las aplicaciones pidan guardar el trabajo sin guardar (solo se cierran a la fuerza las aplicaciones que no responden); true cierra todas las aplicaciones de inmediato y se pierde el trabajo sin guardar.

Devuelve

true si Windows aceptó la solicitud de apagado (luego continúa por su cuenta); false si Windows la rechazó.

SystemSignOut​

SystemSignOut(force: Bool) → Bool · Simple

Cierra la sesión del usuario actual en Windows sin pedir confirmación, lo que cierra todas las aplicaciones y también Input.Observer.

Parámetros

  • force: Bool — false permite que las aplicaciones pidan guardar el trabajo sin guardar (solo se cierran a la fuerza las aplicaciones que no responden); true cierra todas las aplicaciones de inmediato y se pierde el trabajo sin guardar.

Devuelve

true si Windows aceptó la solicitud de cierre de sesión (luego continúa por su cuenta); false si Windows la rechazó.

SystemSleep​

SystemSleep() → Bool · Simple

Suspende el equipo sin preguntar. El script espera aquí y continúa después de que el equipo se reactiva. En un equipo con Espera moderna (Modern Standby) no hace nada; use SystemMonitorOff en ese caso.

Parámetros

Sin parámetros.

Devuelve

true después de que el equipo se suspendió y se reactivó; false si este equipo no tiene un estado de suspensión que un programa pueda iniciar, o Windows lo rechazó.

Timer​

TimerCreate​

TimerCreate(name: Text, startDelayMs: Integer, intervalMs: Integer, repeatCount: Integer, script: Text) → Bool

Crea un temporizador con nombre que ejecuta texto de script después de un retraso y luego a un intervalo fijo, o reemplaza el temporizador con ese nombre. Los temporizadores siguen en ejecución después de que termina el script, hasta que se eliminan o el motor se cierra.

Parámetros

  • name: Text — Un nombre para el temporizador, que usa TimerDelete. Distingue mayúsculas de minúsculas; un temporizador existente con este nombre se reemplaza.
  • startDelayMs: Integer — Retraso antes de la primera ejecución, en milisegundos; 0 o más.
  • intervalMs: Integer — Tiempo entre ejecuciones, en milisegundos; 1 o más. Una ejecución no espera a que termine la anterior.
  • repeatCount: Integer — Cuántas veces se ejecutará en total; 0 repite hasta que se elimine el temporizador.
  • script: Text — El texto del script que se ejecutará en cada intervalo. Se ejecuta por sí solo, sin contexto de disparador y sin ninguna de las variables de este script.

Devuelve

true en cuanto se establece el temporizador. Un startDelayMs o un repeatCount negativo, o un intervalMs menor que 1, detiene el script con un error.

2 ejemplos: Un temporizador repetitivo que cuenta, Script de temporizador desde un snippet, sin secuencias de escape

TimerDelete​

TimerDelete(name: Text) → Bool

Quita el temporizador con este nombre para que no vuelva a ejecutarse.

Parámetros

  • name: Text — El nombre del temporizador, tal como se pasó a TimerCreate. Distingue mayúsculas de minúsculas.

Devuelve

true si el temporizador existía y se quitó; false si no había ningún temporizador con ese nombre.

1 ejemplo: Enumerar y detener temporizadores

TimerDeleteAll​

TimerDeleteAll() → Bool

Quita todos los temporizadores creados con TimerCreate, para que ninguno vuelva a ejecutarse.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

1 ejemplo: Enumerar y detener temporizadores

TimerEnumerateAll​

TimerEnumerateAll() → Integer

Toma una lista de los nombres de todos los temporizadores actuales y devuelve cuántos hay. Lea cada nombre con TimerGetEnumeratedNameAt.

Parámetros

Sin parámetros.

Devuelve

El número de temporizadores, o 0 si no hay ninguno.

1 ejemplo: Enumerar y detener temporizadores

TimerGetEnumeratedNameAt​

TimerGetEnumeratedNameAt(index: Integer) → Text

Devuelve un nombre de temporizador de la lista que TimerEnumerateAll tomó por última vez en este script.

Parámetros

  • index: Integer — Posición en la lista, empezando en cero, de 0 al número menos 1. El orden no tiene ningún significado.

Devuelve

El nombre del temporizador, o texto vacío si index está fuera del intervalo o no se ha llamado a TimerEnumerateAll.

1 ejemplo: Enumerar y detener temporizadores

Tray​

TrayMinimizeWindow​

TrayMinimizeWindow(window: Window) → Bool

Oculta una ventana y muestra un icono para ella en la bandeja con el icono y el título de la propia ventana. Al hacer clic en el icono, la ventana se restaura donde estaba. Si se pasa un control, se oculta su ventana de nivel superior.

Parámetros

  • window: Window — La ventana que se ocultará, como ContextGetWindow().

Devuelve

true si se aceptó la solicitud; false para una ventana nula o una que ya no existe.

1 ejemplo: Ocultar una ventana en la bandeja

TrayRestoreAllWindows​

TrayRestoreAllWindows() → Bool

Restaura todas las ventanas ocultas con TrayMinimizeWindow y quita sus iconos de la bandeja.

Parámetros

Sin parámetros.

Devuelve

true si se envió la solicitud; false si el motor no ha terminado de iniciarse.

UI​

UIClearPrintLog​

UIClearPrintLog() → Bool

Borra la pestaña Usuario de la consola de diagnóstico, donde aparece la salida de UtilityPrint, incluida la salida guardada mientras la consola estaba cerrada.

Parámetros

Sin parámetros.

Devuelve

Siempre true.

UICloseDisplayMessage​

UICloseDisplayMessage(sessionId: Integer) → Bool

Cierra un mensaje en pantalla abierto por UIShowDisplayMessage. No hace nada si ese mensaje ya se cerró.

Parámetros

  • sessionId: Integer — El id. que devolvió UIShowDisplayMessage para el mensaje que se cerrará.

Devuelve

Siempre true, incluso cuando el mensaje ya se había cerrado.

1 ejemplo: Un mensaje en pantalla que se actualiza en vivo

UIGetCulture​

UIGetCulture() → Text

Devuelve el idioma y la región que Input.Observer usa para sus propios textos (menú de la bandeja, mensajes, textos de error), según lo establecido por UISetCulture, la opción de idioma o Windows.

Parámetros

Sin parámetros.

Devuelve

El nombre de referencia cultural tal como se estableció, como en-US o es-ES, aunque lo sustituya la traducción de otra región.

UISetCulture​

UISetCulture(culture: Text) → Bool

Cambia el idioma que Input.Observer usa para sus propios textos (menú de la bandeja, mensajes, textos de error) hasta que se cierre o cambie la opción de idioma. No cambia la ventana de configuración ni la opción guardada.

Parámetros

  • culture: Text — Un nombre de referencia cultural como en-US, de-DE o es-MX.

Devuelve

true si se aplicó la referencia cultural; false, y el idioma se queda como estaba, si culture no es una referencia cultural que Windows conozca o Input.Observer no tiene traducción en su idioma. Se acepta otra región de un idioma traducido, como es-ES.

UIShowConsole​

UIShowConsole() → Bool

Abre la consola de diagnóstico, o la trae al frente si ya está abierta, y espera hasta que esté abierta. Si la configuración está protegida con contraseña, espera mientras se pide la contraseña. Solo el propio botón de cerrar de la consola la cierra.

Parámetros

Sin parámetros.

Devuelve

true en cuanto la consola está abierta; false si no se abrió, por ejemplo porque se canceló la solicitud de contraseña o no se puede leer el estado guardado de la consola.

UIShowDisplayMessage​

UIShowDisplayMessage(title: Text, message: Text, durationMs: Integer, opacity: Real, location: Any, titleFontFamily: Text, titleFontSizePt: Integer, titleBold: Bool, titleItalic: Bool, messageFontFamily: Text, messageFontSizePt: Integer, messageBold: Bool, messageItalic: Bool, foreColor: Text, backColor: Text, paddingPx: Integer, usePrimaryScreen: Bool, titleAlign: Integer, messageAlign: Integer) → Integer · Simple

Muestra un panel con una línea de título y una línea de mensaje en un lugar fijo de la pantalla, y regresa de inmediato. Puede haber varios abiertos a la vez; conserve el id. devuelto para actualizar o cerrar este.

Parámetros

  • title: Text — Texto de la línea superior, dibujado con la fuente del título. Un texto vacío omite la línea.
  • message: Text — Texto de la segunda línea, dibujado con la fuente del mensaje. Un texto largo se ajusta en más líneas. Un texto vacío omite la línea.
  • durationMs: Integer — Cuánto tiempo permanece el panel, en milisegundos. 0 o menos lo mantiene hasta que UICloseDisplayMessage lo cierre (el panel integrado también se cierra con un doble clic).
  • opacity: Real — Qué tan opaco es el panel, de 0.05 (casi invisible) a 1.0 (totalmente opaco). Los valores fuera de ese intervalo se ajustan a él.
  • location: Any — Dónde mostrarlo: una constante Location como Location.BottomCenter (colocado dentro del área de la pantalla que no cubre la barra de tareas), o un Text 'x,y' sin espacios que indica la esquina superior izquierda del panel en píxeles de pantalla, como '100,200'. Cualquier otra cosa detiene la acción con un error.
  • titleFontFamily: Text — Nombre de la fuente de la línea de título, como Segoe UI.
  • titleFontSizePt: Integer — Tamaño de la fuente del título en puntos. Los valores menores que 1 cuentan como 1.
  • titleBold: Bool — true para dibujar la línea de título en negrita.
  • titleItalic: Bool — true para dibujar la línea de título en cursiva.
  • messageFontFamily: Text — Nombre de la fuente de la línea de mensaje, como Segoe UI.
  • messageFontSizePt: Integer — Tamaño de la fuente del mensaje en puntos. Los valores menores que 1 cuentan como 1.
  • messageBold: Bool — true para dibujar la línea de mensaje en negrita.
  • messageItalic: Bool — true para dibujar la línea de mensaje en cursiva.
  • foreColor: Text — Color del texto de ambas líneas: un nombre de color como white o black, '#RRGGBB', o 'R,G,B' con cada número de 0 a 255 y sin espacios. Cualquier otra cosa detiene la acción con un error.
  • backColor: Text — Color de fondo, en las mismas formas que foreColor, como '#F7F7F5'. Use opacity, no el color, para que el panel sea translúcido.
  • paddingPx: Integer — Espacio vacío alrededor del texto, en píxeles con una escala de pantalla del 100 por ciento; aumenta con la escala de la pantalla. Los valores menores que 0 cuentan como 0.
  • usePrimaryScreen: Bool — true para colocar una Location en el monitor principal; false para usar el monitor en el que está ahora el puntero del mouse. Se omite para una ubicación 'x,y'.
  • titleAlign: Integer — Cómo se alinea la línea de título: TextAlign.Left, TextAlign.Center o TextAlign.Right. Cualquier otro valor detiene la acción con un error.
  • messageAlign: Integer — Cómo se alinea la línea de mensaje: TextAlign.Left, TextAlign.Center o TextAlign.Right. Cualquier otro valor detiene la acción con un error.

Devuelve

El id. de sesión del mensaje, siempre mayor que 0, para UIUpdateDisplayMessage y UICloseDisplayMessage. Se devuelve un id. incluso cuando los mensajes están desactivados en la configuración y no aparece nada.

2 ejemplos: Subir el volumen con indicación en pantalla, Un mensaje en pantalla que se actualiza en vivo

UIShowInputBox​

UIShowInputBox(prompt: Text, title: Text, defaultText: Text) → Text · Simple

Muestra un cuadro que pide al usuario escribir una línea de texto, con los botones Aceptar y Cancelar. Bloquea el script hasta que se cierra el cuadro y luego devuelve el foco a la ventana que lo tenía.

Parámetros

  • prompt: Text — La pregunta que se muestra encima del campo de texto. Un texto de más de 2000 caracteres se recorta.
  • title: Text — Título que se muestra en la barra de título del cuadro.
  • defaultText: Text — Texto que ya está en el campo cuando se abre el cuadro, seleccionado para que lo que se escriba lo reemplace. Use un texto vacío para un campo vacío.

Devuelve

El texto escrito cuando el usuario hace clic en Aceptar (hasta 4096 caracteres), o texto vacío con Cancelar, Esc o el botón de cerrar. Aceptar con el campo vacío también devuelve texto vacío.

2 ejemplos: Leer un número que escribió alguien, Un gesto, varias opciones

UIShowMenu​

UIShowMenu(items: Text) → Integer · Simple

Muestra un menú emergente en el puntero del mouse, para que un gesto o una tecla de acceso rápido pueda ofrecer varias opciones. Bloquea el script hasta que el usuario elige un elemento o descarta el menú.

Parámetros

  • items: Text — Los elementos del menú, uno por línea. Una línea que solo contiene - es un separador; las líneas en blanco se omiten. De 1 a 100 elementos, o la acción se detiene con un error; un elemento de más de 260 caracteres se recorta. Ponga & antes de una letra para convertirla en la tecla de acceso del elemento; && muestra un solo &.

Devuelve

La posición, empezando en 0, del elemento elegido, contando solo los elementos (no los separadores), o -1 si se descartó el menú o no se pudo mostrar.

1 ejemplo: Un gesto, varias opciones

UIShowMessageBox​

UIShowMessageBox(message: Text, title: Text, buttons: Text, icon: Text) → Text · Simple

Muestra un cuadro de mensaje estándar de Windows delante de las demás ventanas y espera a que el usuario presione un botón. Bloquea el script hasta que se cierra el cuadro.

Parámetros

  • message: Text — El texto del mensaje que se muestra en el cuadro.
  • title: Text — Título que se muestra en la barra de título del cuadro.
  • buttons: Text — Qué botones se muestran, escritos exactamente así: OK, OKCancel, YesNo, YesNoCancel, RetryCancel o AbortRetryIgnore. Cualquier otra cosa detiene la acción con un error.
  • icon: Text — Qué icono se muestra, escrito exactamente así: None, Information, Warning, Error o Question. Cualquier otra cosa detiene la acción con un error.

Devuelve

El botón presionado: OK, Cancel, Yes, No, Retry, Abort o Ignore (cerrar el cuadro con Esc o con su botón de cerrar devuelve Cancel cuando hay un botón Cancelar). Texto vacío si no se pudo mostrar el cuadro.

3 ejemplos: Leer un número que escribió alguien, Cerrar ventanas por patrón de título, después de confirmar, Hacer una pregunta

UIShowSettings​

UIShowSettings() → Bool · Simple

Abre la ventana de configuración de Input.Observer, o la trae al frente si ya está abierta. Regresa sin esperar a que la ventana termine de cargarse.

Parámetros

Sin parámetros.

Devuelve

true si la ventana de configuración se trajo al frente o se inició; false si falta Input.Observer.UI.exe, no se pudo iniciar o el motor no respondió en 3 segundos.

UIUpdateDisplayMessage​

UIUpdateDisplayMessage(sessionId: Integer, title: Text, message: Text, durationMs: Integer, opacity: Real, location: Any, titleFontFamily: Text, titleFontSizePt: Integer, titleBold: Bool, titleItalic: Bool, messageFontFamily: Text, messageFontSizePt: Integer, messageBold: Bool, messageItalic: Bool, foreColor: Text, backColor: Text, paddingPx: Integer, usePrimaryScreen: Bool, titleAlign: Integer, messageAlign: Integer) → Bool

Reemplaza todo lo de un panel abierto de UIShowDisplayMessage (texto, posición, fuentes, colores y duración) por valores nuevos. La duración vuelve a empezar desde esta llamada.

Parámetros

  • sessionId: Integer — El id. que devolvió UIShowDisplayMessage para el mensaje que se cambiará.
  • title: Text — Nuevo texto de la línea superior, dibujado con la fuente del título. Un texto vacío omite la línea.
  • message: Text — Nuevo texto de la segunda línea, dibujado con la fuente del mensaje. Un texto largo se ajusta en más líneas. Un texto vacío omite la línea.
  • durationMs: Integer — Cuánto tiempo permanece el panel a partir de ahora, en milisegundos. 0 o menos lo mantiene hasta que UICloseDisplayMessage lo cierre (el panel integrado también se cierra con un doble clic).
  • opacity: Real — Qué tan opaco es el panel, de 0.05 (casi invisible) a 1.0 (totalmente opaco). Los valores fuera de ese intervalo se ajustan a él.
  • location: Any — Dónde mostrarlo: una constante Location como Location.BottomCenter (colocado dentro del área de la pantalla que no cubre la barra de tareas), o un Text 'x,y' sin espacios que indica la esquina superior izquierda del panel en píxeles de pantalla, como '100,200'. Cualquier otra cosa detiene la acción con un error.
  • titleFontFamily: Text — Nombre de la fuente de la línea de título, como Segoe UI.
  • titleFontSizePt: Integer — Tamaño de la fuente del título en puntos. Los valores menores que 1 cuentan como 1.
  • titleBold: Bool — true para dibujar la línea de título en negrita.
  • titleItalic: Bool — true para dibujar la línea de título en cursiva.
  • messageFontFamily: Text — Nombre de la fuente de la línea de mensaje, como Segoe UI.
  • messageFontSizePt: Integer — Tamaño de la fuente del mensaje en puntos. Los valores menores que 1 cuentan como 1.
  • messageBold: Bool — true para dibujar la línea de mensaje en negrita.
  • messageItalic: Bool — true para dibujar la línea de mensaje en cursiva.
  • foreColor: Text — Color del texto de ambas líneas: un nombre de color como white o black, '#RRGGBB', o 'R,G,B' con cada número de 0 a 255 y sin espacios. Cualquier otra cosa detiene la acción con un error.
  • backColor: Text — Color de fondo, en las mismas formas que foreColor, como '#F7F7F5'. Use opacity, no el color, para que el panel sea translúcido.
  • paddingPx: Integer — Espacio vacío alrededor del texto, en píxeles con una escala de pantalla del 100 por ciento; aumenta con la escala de la pantalla. Los valores menores que 0 cuentan como 0.
  • usePrimaryScreen: Bool — true para colocar una Location en el monitor principal; false para usar el monitor en el que está ahora el puntero del mouse. Se omite para una ubicación 'x,y'.
  • titleAlign: Integer — Cómo se alinea la línea de título: TextAlign.Left, TextAlign.Center o TextAlign.Right. Cualquier otro valor detiene la acción con un error.
  • messageAlign: Integer — Cómo se alinea la línea de mensaje: TextAlign.Left, TextAlign.Center o TextAlign.Right. Cualquier otro valor detiene la acción con un error.

Devuelve

Siempre true, incluso cuando el mensaje ya se había cerrado (en ese caso la llamada no hace nada).

1 ejemplo: Un mensaje en pantalla que se actualiza en vivo

Utility​

UtilityGetTickCount​

UtilityGetTickCount() → Integer

Devuelve el número de milisegundos transcurridos desde que se inició Windows. Reste dos lecturas para medir el tiempo transcurrido, por ejemplo para detectar un disparo doble. No es un reloj; use DateTimeGetNow para la hora del día.

Parámetros

Sin parámetros.

Devuelve

Los milisegundos desde que se inició Windows, como Integer.

UtilityLockAcquire​

UtilityLockAcquire(name: Text, timeoutSeconds: Integer) → Integer

Toma un bloqueo con nombre para que solo una acción a la vez ejecute una sección de script. Bloquea el script hasta que el bloqueo quede libre o pase timeoutSeconds. El bloqueo se libera automáticamente cuando termina el script.

Parámetros

  • name: Text — El nombre del bloqueo, de 1 a 255 caracteres, compartido por todas las acciones; las mayúsculas y las minúsculas se consideran iguales. Se permite volver a tomar un bloqueo que este script ya tiene, y entonces se necesita un UtilityLockRelease más.
  • timeoutSeconds: Integer — El tiempo máximo de espera, en segundos. 0, o más de 24 días, espera hasta que el bloqueo quede libre o se detenga la acción. Un valor negativo detiene la acción con un error.

Devuelve

LockResult.Acquired, LockResult.TimedOut (también cuando la acción se detiene mientras espera), o LockResult.Pinned de inmediato si el bloqueo está fijado.

1 ejemplo: Permitir que solo una acción ejecute una sección a la vez

UtilityLockAcquirePinned​

UtilityLockAcquirePinned(name: Text, timeoutSeconds: Integer) → Integer

Toma un bloqueo con nombre y lo fija, para que siga tomado después de que termine el script. Solo un UtilityLockRelease de esta misma ejecución del script, o una recarga de la configuración, lo libera. Se bloquea igual que UtilityLockAcquire.

Parámetros

  • name: Text — El nombre del bloqueo, de 1 a 255 caracteres, compartido por todas las acciones; las mayúsculas y las minúsculas se consideran iguales. Un bloqueo que este script ya tiene pasa a estar fijado.
  • timeoutSeconds: Integer — El tiempo máximo de espera, en segundos. 0, o más de 24 días, espera hasta que el bloqueo quede libre o se detenga la acción. Un valor negativo detiene la acción con un error.

Devuelve

LockResult.Acquired, LockResult.TimedOut (también cuando la acción se detiene mientras espera), o LockResult.Pinned de inmediato si el bloqueo ya está fijado.

UtilityLockGetState​

UtilityLockGetState(name: Text) → Integer

Informa si un bloqueo con nombre está libre, lo tiene este script, lo tiene otra acción o está fijado. Nunca espera.

Parámetros

  • name: Text — El nombre del bloqueo, de 1 a 255 caracteres; las mayúsculas y las minúsculas se consideran iguales.

Devuelve

LockState.Free, LockState.HeldByMe, LockState.HeldByOther o LockState.Pinned. Un bloqueo fijado informa LockState.Pinned incluso al script que lo fijó.

UtilityLockRelease​

UtilityLockRelease(name: Text) → Bool

Libera un bloqueo con nombre que tiene este script, o quita su fijación. Un bloqueo tomado varias veces se libera después del mismo número de liberaciones.

Parámetros

  • name: Text — El nombre del bloqueo, de 1 a 255 caracteres; las mayúsculas y las minúsculas se consideran iguales.

Devuelve

true si este script tenía el bloqueo; false, sin hacer nada, si nadie lo tiene o lo tiene otra acción.

1 ejemplo: Permitir que solo una acción ejecute una sección a la vez

UtilityPrint​

UtilityPrint(text: Text) → Bool

Escribe una línea de texto en la sección Usuario de la consola de diagnóstico, o en la salida de la sección Script cuando el script se ejecuta desde ahí. Las líneas impresas mientras la consola está cerrada aparecen la próxima vez que se abre.

Parámetros

  • text: Text — El texto que se escribirá. Convierta primero un número en Text con StringFormat o StringFromNumber.

Devuelve

Siempre true.

70 ejemplos: Hola, consola, Los cinco tipos de valor, Veracidad de cada tipo, Cadena else-if, Bucles de conteo: hacia arriba, hacia abajo y por saltos, Bucles anidados: una tabla de multiplicar, Bucle while: esperar una ventana, con tiempo de espera, while (true) con una marca de salida, break y continue, Sorpresas de precedencia, && y || evalúan ambos lados, Igualdad entre tipos, La aritmética de tipos mixtos da 0, Comentarios, instrucciones vacías y bloques, División de Integer frente a Real, y división entre cero, Resto sin %, Redondeo y funciones integradas matemáticas de Real, Limitar un valor a un intervalo, Números aleatorios y un volado, Longitud del trazo de un gesto, Dar formato a un Real sin seis decimales, Máscaras de marcas: activar, borrar, alternar, comprobar, Leer el color del píxel bajo el cursor, De Integer a texto hexadecimal, Contar los bits activos, Casos límite del desplazamiento, Intercambiar dos Integer, Bits de estado de tecla, Secuencias de escape y rutas de Windows, Dar formato a más de dos valores, Dividir y recorrer, Divisiones anidadas: pares clave=valor, Último índice de: una extensión de archivo, Leer un número que escribió alguien, Iniciar un programa, esperar su ventana y actuar sobre ella, Extraer un valor de un texto copiado con una expresión regular, Rellenar un número con ceros, Invertir un Text, Contar las palabras del portapapeles, Comparaciones sin distinguir mayúsculas de minúsculas, El orden del texto es ordinal, La fecha de hoy y un nombre de archivo con marca de tiempo, Constantes con nombre frente a números sin procesar, Enumerar las ventanas de nivel superior visibles, Minimizar todas las ventanas de una aplicación, Inspeccionar los controles secundarios de una ventana, Del proceso a la ventana, Describir lo que está bajo el cursor, Todo lo que sabe el contexto del disparador, ¿Hacia dónde fue el trazo?, Bifurcar según el botón del trazo, Guardar en un archivo una imagen copiada, Leer un archivo y contar sus líneas, Contar los tipos de archivo de una carpeta, Vigilar una carpeta, Un temporizador repetitivo que cuenta, Enumerar y detener temporizadores, Un contador que se conserva después de un reinicio, Una lista guardada en Storage, Permitir que solo una acción ejecute una sección a la vez, Hacer una pregunta, Expandir variables de entorno, Pasar el trabajo a AutoHotkey, Enumerar los monitores, Estado del motor, Snippets como funciones reutilizables, Comunicarse con un complemento, Hacer una pregunta a un dispositivo serie, Enumerar los puertos COM, Mantener abierto el puerto de un Arduino y enviarle comandos

UtilityWait​

UtilityWait(milliseconds: Integer) → Bool · Simple

Pausa el script durante un número de milisegundos, por ejemplo para dar tiempo a que una ventana o el portapapeles se pongan al día. La espera termina antes si se detiene la acción.

Parámetros

  • milliseconds: Integer — Cuánto tiempo se esperará, en milisegundos, de 0 a 60000 (un minuto). Los valores mayores esperan un minuto; los valores negativos no esperan.

Devuelve

Siempre true.

10 ejemplos: Bucle while: esperar una ventana, con tiempo de espera, Mover el mouse en círculo, Rellenar una plantilla y pegarla, Hacer clic en algún lugar y devolver el cursor, Un arrastre por script, Confinar el cursor a una ventana durante 5 segundos, Teclas multimedia, Pasar a mayúsculas el texto seleccionado, Buscar en la web la selección, Un mensaje en pantalla que se actualiza en vivo

Window​

WindowCenterToScreen​

WindowCenterToScreen(window: Window) → Bool · Simple

Mueve una ventana para que quede centrada en el área de trabajo (la pantalla menos la barra de tareas) del monitor en el que está, conservando su tamaño.

Parámetros

  • window: Window — La ventana que se centrará.

Devuelve

true si la ventana se movió; false si la ventana es nula o está cerrada, o se negó a moverse.

2 ejemplos: Bucle while: esperar una ventana, con tiempo de espera, Recordar y restaurar la posición de una ventana

WindowClipToScreen​

WindowClipToScreen(window: Window) → Bool

Reduce y mueve una ventana lo justo para que ningún borde sobresalga del área de trabajo (la pantalla menos la barra de tareas) del monitor en el que está. Una ventana que está completamente fuera del área de trabajo primero se mueve a ella con su tamaño actual.

Parámetros

  • window: Window — La ventana que se ajustará al área de trabajo.

Devuelve

true si se colocó la ventana, incluso cuando ya estaba dentro del área de trabajo; false si la ventana es nula o está cerrada, o rechazó el cambio.

WindowClose​

WindowClose(window: Window) → Bool · Simple

Pide a una ventana que se cierre, como si el usuario hiciera clic en su botón de cerrar. El programa puede pedir que se guarden los cambios o negarse; use WindowWaitClose para esperar hasta que desaparezca.

Parámetros

  • window: Window — La ventana que se cerrará.

Devuelve

true si se envió la solicitud de cierre, lo que no significa que la ventana se haya cerrado; false si la ventana es nula o está cerrada, o pertenece a un programa que se ejecuta con más privilegios, por ejemplo como administrador.

3 ejemplos: Cerrar ventanas por patrón de título, después de confirmar, Bifurcar según el botón del trazo, Cambiar el comportamiento mientras se mantiene presionada Ctrl

WindowContainsTitle​

WindowContainsTitle(window: Window, text: Text) → Bool

Comprueba si el título de una ventana contiene un texto, sin distinguir mayúsculas de minúsculas.

Parámetros

  • window: Window — La ventana cuyo título se comprobará.
  • text: Text — El texto que se buscará en cualquier parte del título. No se distinguen mayúsculas de minúsculas.

Devuelve

true si el título contiene text, y siempre true cuando text está vacío; de lo contrario, false, incluso para una ventana nula o cerrada.

WindowControlFromPoint​

WindowControlFromPoint(x: Integer, y: Integer) → Window

Devuelve la ventana más interna en un punto de la pantalla, como un botón, un cuadro de texto u otro control dentro de la ventana de un programa. Se omiten las ventanas ocultas y deshabilitadas.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles de la pantalla virtual.
  • y: Integer — Posición vertical en la pantalla, en píxeles de la pantalla virtual.

Devuelve

El control o la ventana que está bajo el punto, o una ventana nula si no hay ninguno.

1 ejemplo: Describir lo que está bajo el cursor

WindowEnsureVisible​

WindowEnsureVisible(window: Window) → Bool

Desliza una ventana para que quede por completo dentro del área de trabajo del monitor en el que está, sin cambiar su tamaño. Una ventana más grande que el área de trabajo se alinea con la esquina superior izquierda del área de trabajo.

Parámetros

  • window: Window — La ventana que se llevará por completo a la pantalla.

Devuelve

true si se colocó la ventana, incluso cuando ya estaba completamente visible; false si la ventana es nula o está cerrada, o se negó a moverse.

WindowFindAllByModuleRegex​

WindowFindAllByModuleRegex(pattern: Text) → Integer

Busca todas las ventanas de nivel superior, incluidas las ocultas, cuya ruta de archivo de programa coincide con una expresión regular, y guarda la lista para WindowGetEnumeratedAt. Reemplaza cualquier lista de ventanas anterior.

Parámetros

  • pattern: Text — Una expresión regular que se compara, sin distinguir mayúsculas de minúsculas, con la ruta completa del programa propietario de cada ventana, como 'notepad[.]exe$'.

Devuelve

El número de ventanas que coinciden, o 0 si ninguna coincide. Un patrón no válido detiene la acción con un error.

1 ejemplo: Minimizar todas las ventanas de una aplicación

WindowFindAllByTitleRegex​

WindowFindAllByTitleRegex(pattern: Text) → Integer

Busca todas las ventanas de nivel superior, incluidas las ocultas, cuyo título coincide con una expresión regular, y guarda la lista para WindowGetEnumeratedAt. Reemplaza cualquier lista de ventanas anterior.

Parámetros

  • pattern: Text — Una expresión regular que se compara con el título de cada ventana, sin distinguir mayúsculas de minúsculas. Coincide en cualquier parte del título, a menos que se ancle con ^ o $.

Devuelve

El número de ventanas que coinciden, o 0 si ninguna coincide. Un patrón no válido detiene la acción con un error.

1 ejemplo: Cerrar ventanas por patrón de título, después de confirmar

WindowFindByClassName​

WindowFindByClassName(className: Text) → Window

Busca la ventana de nivel superior visible más al frente cuyo nombre de clase contiene el texto indicado, sin distinguir mayúsculas de minúsculas.

Parámetros

  • className: Text — Texto que se buscará en el nombre de clase, como 'Notepad'. Coincide una parte del nombre; un texto vacío coincide con la ventana visible más al frente.

Devuelve

La ventana encontrada, o una ventana nula si ninguna ventana de nivel superior visible coincide.

WindowFindByTitle​

WindowFindByTitle(title: Text) → Window

Busca la ventana de nivel superior visible más al frente cuyo título contiene el texto indicado, sin distinguir mayúsculas de minúsculas.

Parámetros

  • title: Text — Texto que se buscará en cualquier parte del título. No se distinguen mayúsculas de minúsculas; un texto vacío coincide con la ventana visible más al frente.

Devuelve

La ventana encontrada, o una ventana nula si ninguna ventana de nivel superior visible coincide.

4 ejemplos: Veracidad de cada tipo, Bucle while: esperar una ventana, con tiempo de espera, Igualdad entre tipos, Hacer clic en un punto dentro de una ventana

WindowFitToScreen​

WindowFitToScreen(window: Window) → Bool · Simple

Cambia el tamaño de una ventana y la mueve para que sus bordes visibles ocupen el área de trabajo (la pantalla menos la barra de tareas) del monitor en el que está, sin maximizarla.

Parámetros

  • window: Window — La ventana que se ajustará al área de trabajo.

Devuelve

true si se cambió el tamaño de la ventana; false si la ventana es nula o está cerrada, o rechazó el cambio.

WindowFromPoint​

WindowFromPoint(x: Integer, y: Integer) → Window

Devuelve la ventana de nivel superior en un punto de la pantalla, como la ventana del programa que está bajo el mouse, en lugar del control que hay dentro de ella.

Parámetros

  • x: Integer — Posición horizontal en la pantalla, en píxeles de la pantalla virtual.
  • y: Integer — Posición vertical en la pantalla, en píxeles de la pantalla virtual.

Devuelve

La ventana de nivel superior que está bajo el punto, o una ventana nula si no hay ninguna.

WindowFromProcessId​

WindowFromProcessId(processId: Integer) → Window

Devuelve la ventana principal de un programa en ejecución: la ventana de nivel superior visible más al frente que pertenece a ese proceso.

Parámetros

  • processId: Integer — El id. de proceso, tal como lo devuelve WindowGetProcessId o ShellGetEnumeratedProcessIdAt.

Devuelve

La ventana, o una ventana nula si el proceso no tiene ninguna ventana de nivel superior visible o processId es 0.

1 ejemplo: Del proceso a la ventana

WindowGetActive​

WindowGetActive() → Window

Devuelve la ventana en primer plano: la ventana de nivel superior en la que el usuario está trabajando actualmente.

Parámetros

Sin parámetros.

Devuelve

La ventana activa, o una ventana nula si no hay ninguna ventana activa en ese momento, por ejemplo mientras cambia el foco.

4 ejemplos: Los cinco tipos de valor, Dar formato a más de dos valores, Comparaciones sin distinguir mayúsculas de minúsculas, Ajustar la ventana activa a la mitad izquierda de su monitor

WindowGetAllChildren​

WindowGetAllChildren(window: Window, directOnly: Bool) → Integer

Enumera las ventanas secundarias (controles) que hay dentro de una ventana y guarda la lista para WindowGetEnumeratedAt. Reemplaza cualquier lista de ventanas anterior.

Parámetros

  • window: Window — La ventana cuyas ventanas secundarias se enumerarán.
  • directOnly: Bool — true solo para las ventanas secundarias directas de la ventana; false para todas las descendientes en cualquier nivel.

Devuelve

El número de ventanas secundarias encontradas, o 0 si no hay ninguna o la ventana es nula.

1 ejemplo: Inspeccionar los controles secundarios de una ventana

WindowGetAllProps​

WindowGetAllProps(window: Window) → Integer

Enumera todas las propiedades almacenadas en una ventana, ya sea por este motor, por el propio programa o por otro software, y guarda la lista para WindowGetEnumeratedPropNameAt y WindowGetEnumeratedPropValueAt.

Parámetros

  • window: Window — La ventana cuyas propiedades se enumerarán.

Devuelve

El número de propiedades encontradas, o 0 si no hay ninguna o la ventana es nula.

WindowGetAllTopLevel​

WindowGetAllTopLevel() → Integer

Enumera todas las ventanas de nivel superior del escritorio, de la más al frente a la más al fondo, incluidas las ocultas y las encubiertas, y guarda la lista para WindowGetEnumeratedAt. Reemplaza cualquier lista de ventanas anterior.

Parámetros

Sin parámetros.

Devuelve

El número de ventanas de nivel superior encontradas.

1 ejemplo: Enumerar las ventanas de nivel superior visibles

WindowGetAlpha​

WindowGetAlpha(window: Window) → Integer

Devuelve el nivel de transparencia de una ventana, tal como lo estableció WindowSetAlpha o el propio programa.

Parámetros

  • window: Window — La ventana que se leerá.

Devuelve

Un valor de 0 (totalmente transparente) a 255 (totalmente opaco). 255 para una ventana sin transparencia establecida, y para una ventana nula o cerrada.

1 ejemplo: Recorrer niveles de transparencia de una ventana

WindowGetClassName​

WindowGetClassName(window: Window) → Text

Devuelve el nombre de clase de una ventana, el nombre de tipo que Windows usa para ella, como 'Notepad' o 'Button'. Útil para reconocer ventanas cuyo título cambia.

Parámetros

  • window: Window — La ventana que se leerá.

Devuelve

El nombre de clase, o texto vacío si la ventana es nula o está cerrada.

2 ejemplos: Inspeccionar los controles secundarios de una ventana, Describir lo que está bajo el cursor

WindowGetControlText​

WindowGetControlText(window: Window) → Text

Lee el texto de un control de cualquier programa, como un cuadro de texto, una barra de estado o el mensaje de un cuadro de diálogo. Solo funciona con los controles clásicos de Windows. Bloquea el script hasta 2 segundos si el programa no responde.

Parámetros

  • window: Window — El control o la ventana que se leerá, por ejemplo de WindowControlFromPoint o WindowGetEnumeratedAt.

Devuelve

El texto del control, de hasta aproximadamente un millón de caracteres, o texto vacío si no tiene, la ventana es nula o está cerrada, o el programa no respondió. El cuadro de contraseña de otro programa da texto vacío.

WindowGetDpi​

WindowGetDpi(window: Window) → Integer

Devuelve los PPP del monitor en el que está una ventana: 96 con una escala de pantalla del 100 por ciento, 144 con una del 150 por ciento.

Parámetros

  • window: Window — La ventana que se comprobará.

Devuelve

Los PPP, o 0 si la ventana es nula o está cerrada.

WindowGetEnabled​

WindowGetEnabled(window: Window) → Bool

Comprueba si una ventana acepta la entrada del mouse y el teclado. Una ventana o un control deshabilitado suele mostrarse atenuado.

Parámetros

  • window: Window — La ventana que se comprobará.

Devuelve

true si la ventana está habilitada; false si está deshabilitada, es nula o está cerrada.

WindowGetEnumeratedAt​

WindowGetEnumeratedAt(index: Integer) → Window

Devuelve una ventana de la lista creada por la llamada más reciente a WindowGetAllTopLevel, WindowGetAllChildren, WindowFindAllByTitleRegex o WindowFindAllByModuleRegex.

Parámetros

  • index: Integer — Posición en la lista, de 0 hasta el número que devolvió la llamada que creó la lista menos 1.

Devuelve

La ventana que está en esa posición, o una ventana nula si index está fuera del intervalo.

4 ejemplos: Enumerar las ventanas de nivel superior visibles, Minimizar todas las ventanas de una aplicación, Cerrar ventanas por patrón de título, después de confirmar, Inspeccionar los controles secundarios de una ventana

WindowGetEnumeratedPropNameAt​

WindowGetEnumeratedPropNameAt(index: Integer) → Text

Devuelve el nombre de una propiedad de la lista creada por la llamada más reciente a WindowGetAllProps.

Parámetros

  • index: Integer — Posición en la lista, de 0 hasta el número que devolvió WindowGetAllProps menos 1.

Devuelve

El nombre de la propiedad, o texto vacío si index está fuera del intervalo.

WindowGetEnumeratedPropValueAt​

WindowGetEnumeratedPropValueAt(index: Integer) → Integer

Devuelve el valor entero sin procesar de una propiedad de la lista creada por la llamada más reciente a WindowGetAllProps. Una propiedad establecida con WindowSetPropertyText muestra aquí un número interno, no su texto.

Parámetros

  • index: Integer — Posición en la lista, de 0 hasta el número que devolvió WindowGetAllProps menos 1.

Devuelve

El valor de la propiedad, o 0 si index está fuera del intervalo.

WindowGetExecutableFolder​

WindowGetExecutableFolder(window: Window) → Text

Devuelve la carpeta que contiene el programa propietario de una ventana, sin el nombre de archivo y sin un separador final. Use WindowGetExecutableName para obtener el nombre de archivo, o WindowGetExecutableFullPath para ambos.

Parámetros

  • window: Window — La ventana cuyo programa se ubicará.

Devuelve

La ruta de la carpeta, o texto vacío si la ventana es nula o está cerrada o no se puede consultar el programa.

WindowGetExecutableFullPath​

WindowGetExecutableFullPath(window: Window) → Text

Devuelve la ruta completa del programa propietario de una ventana, carpeta y nombre de archivo juntos, como la ruta de notepad.exe en la carpeta de Windows. Use WindowGetExecutableFolder o WindowGetExecutableName para obtener una sola parte.

Parámetros

  • window: Window — La ventana cuyo programa se ubicará.

Devuelve

La ruta completa, o texto vacío si la ventana es nula o está cerrada o no se puede consultar el programa.

WindowGetExecutableName​

WindowGetExecutableName(window: Window) → Text

Devuelve el nombre de archivo del programa propietario de una ventana, como 'notepad.exe'.

Parámetros

  • window: Window — La ventana cuyo programa se identificará.

Devuelve

El nombre de archivo del programa, o texto vacío si la ventana es nula o está cerrada o no se puede consultar el programa.

2 ejemplos: Comparaciones sin distinguir mayúsculas de minúsculas, Enumerar las ventanas de nivel superior visibles

WindowGetHeight​

WindowGetHeight(window: Window) → Integer

Devuelve el alto visible de una ventana, sin el borde invisible de cambio de tamaño que Windows agrega alrededor de la mayoría de las ventanas.

Parámetros

  • window: Window — La ventana que se medirá.

Devuelve

El alto en píxeles, o 0 si la ventana es nula o está cerrada.

3 ejemplos: Dar formato a más de dos valores, Ajustar la ventana activa a la mitad izquierda de su monitor, Confinar el cursor a una ventana durante 5 segundos

WindowGetLastFocus​

WindowGetLastFocus() → Window

Devuelve la ventana o el control que recibió más recientemente el foco del teclado en cualquier parte del escritorio. A menudo es un control, como un cuadro de texto, y no su ventana de nivel superior.

Parámetros

Sin parámetros.

Devuelve

La última ventana o el último control con el foco, o una ventana nula si el foco no ha cambiado desde que se inició el motor.

WindowGetMovableAncestor​

WindowGetMovableAncestor(window: Window) → Window

Devuelve la ventana más cercana que se puede arrastrar: la propia ventana o el primer elemento primario por encima de ella que tenga un menú del sistema. Convierte un control que está bajo el mouse en la ventana que se moverá.

Parámetros

  • window: Window — La ventana o el control desde el que se empezará.

Devuelve

La propia ventana o el primer elemento primario con un menú del sistema, o una ventana nula si ninguno lo tiene o la ventana es nula.

WindowGetParent​

WindowGetParent(window: Window) → Window

Devuelve la ventana que contiene un control. Para una ventana emergente, como un cuadro de diálogo, puede ser la ventana propietaria.

Parámetros

  • window: Window — La ventana o el control cuyo elemento primario se obtendrá.

Devuelve

La ventana primaria o propietaria, o una ventana nula si no hay ninguna o la ventana es nula o está cerrada.

WindowGetProcessId​

WindowGetProcessId(window: Window) → Integer

Devuelve el id. del proceso (el programa en ejecución) propietario de una ventana, el mismo número que muestra el Administrador de tareas.

Parámetros

  • window: Window — La ventana cuyo proceso se identificará.

Devuelve

El id. de proceso, o 0 si la ventana es nula o está cerrada.

WindowGetPropertyInteger​

WindowGetPropertyInteger(window: Window, name: Text) → Integer

Lee un entero con nombre almacenado en una ventana, por ejemplo uno almacenado antes con WindowSetPropertyInteger para recordar algo sobre esa ventana.

Parámetros

  • window: Window — La ventana de la que se leerá.
  • name: Text — El nombre de la propiedad.

Devuelve

El valor almacenado, o 0 si la propiedad no existe o la ventana es nula. Un 0 almacenado se ve igual que una propiedad que falta.

2 ejemplos: Fijar una ventana encima, Recordar y restaurar la posición de una ventana

WindowGetPropertyText​

WindowGetPropertyText(window: Window, name: Text) → Text

Lee un valor de texto con nombre que este motor almacenó en una ventana con WindowSetPropertyText.

Parámetros

  • window: Window — La ventana de la que se leerá.
  • name: Text — El nombre de la propiedad.

Devuelve

El texto almacenado, o texto vacío si la propiedad no existe, este motor no la almacenó como texto, se sobrescribió desde entonces o la ventana es nula.

WindowGetRoot​

WindowGetRoot(window: Window) → Window

Devuelve la ventana de nivel superior que contiene una ventana o un control, como la ventana del programa que rodea un botón.

Parámetros

  • window: Window — La ventana o el control desde el que se empezará.

Devuelve

La ventana de nivel superior, que es la propia ventana si ya es de nivel superior; una ventana nula si la ventana es nula o está cerrada.

1 ejemplo: Describir lo que está bajo el cursor

WindowGetTitle​

WindowGetTitle(window: Window) → Text

Devuelve el texto de la barra de título de una ventana. Para los controles de otros programas suele estar vacío; use WindowGetControlText para ellos.

Parámetros

  • window: Window — La ventana que se leerá.

Devuelve

El título, o texto vacío si la ventana no tiene ninguno o es nula o está cerrada.

9 ejemplos: Comparaciones sin distinguir mayúsculas de minúsculas, Un gesto, varias opciones, Fijar una ventana encima, Enumerar las ventanas de nivel superior visibles, Inspeccionar los controles secundarios de una ventana, Del proceso a la ventana, Describir lo que está bajo el cursor, Todo lo que sabe el contexto del disparador, Una lista guardada en Storage

WindowGetVisible​

WindowGetVisible(window: Window) → Bool

Comprueba si una ventana está configurada para mostrarse. Una ventana visible puede estar minimizada, tapada por otras ventanas, fuera de la pantalla o en otro escritorio virtual.

Parámetros

  • window: Window — La ventana que se comprobará.

Devuelve

true si la ventana y todos sus elementos primarios se muestran; false si está oculta, es nula o está cerrada.

1 ejemplo: Enumerar las ventanas de nivel superior visibles

WindowGetWidth​

WindowGetWidth(window: Window) → Integer

Devuelve el ancho visible de una ventana, sin el borde invisible de cambio de tamaño que Windows agrega alrededor de la mayoría de las ventanas.

Parámetros

  • window: Window — La ventana que se medirá.

Devuelve

El ancho en píxeles, o 0 si la ventana es nula o está cerrada.

3 ejemplos: Dar formato a más de dos valores, Ajustar la ventana activa a la mitad izquierda de su monitor, Confinar el cursor a una ventana durante 5 segundos

WindowGetX​

WindowGetX(window: Window) → Integer

Devuelve la posición en la pantalla del borde izquierdo visible de una ventana, sin el borde invisible de cambio de tamaño. Para una ventana minimizada es una posición de estacionamiento fuera de la pantalla.

Parámetros

  • window: Window — La ventana que se ubicará.

Devuelve

El borde izquierdo, en píxeles de la pantalla virtual, o 0 si la ventana es nula o está cerrada.

4 ejemplos: Dar formato a más de dos valores, Ajustar la ventana activa a la mitad izquierda de su monitor, Recordar y restaurar la posición de una ventana, Confinar el cursor a una ventana durante 5 segundos

WindowGetY​

WindowGetY(window: Window) → Integer

Devuelve la posición en la pantalla del borde superior visible de una ventana, sin el borde invisible de cambio de tamaño. Para una ventana minimizada es una posición de estacionamiento fuera de la pantalla.

Parámetros

  • window: Window — La ventana que se ubicará.

Devuelve

El borde superior, en píxeles de la pantalla virtual, o 0 si la ventana es nula o está cerrada.

4 ejemplos: Dar formato a más de dos valores, Ajustar la ventana activa a la mitad izquierda de su monitor, Recordar y restaurar la posición de una ventana, Confinar el cursor a una ventana durante 5 segundos

WindowHide​

WindowHide(window: Window) → Bool

Oculta una ventana por completo, incluido su botón de la barra de tareas. El motor la vuelve a mostrar cuando se cierra, y Mostrar ventanas ocultas en el menú de la bandeja la recupera en cualquier momento.

Parámetros

  • window: Window — La ventana que se ocultará.

Devuelve

true si la ventana se ocultó o ya estaba oculta; false si es nula o está cerrada, es el escritorio, la barra de tareas o una de las propias ventanas de este motor, o ya se están registrando 256 ventanas ocultas.

WindowIsCloaked​

WindowIsCloaked(window: Window) → Bool

Comprueba si Windows mantiene una ventana fuera de la vista aunque cuente como mostrada, por ejemplo una ventana en otro escritorio virtual o una aplicación de Store suspendida. Útil para omitir esas ventanas en una lista.

Parámetros

  • window: Window — La ventana que se comprobará.

Devuelve

true si la ventana está encubierta; false si no lo está, o la ventana es nula o está cerrada.

1 ejemplo: Enumerar las ventanas de nivel superior visibles

WindowIsMaximized​

WindowIsMaximized(window: Window) → Bool

Comprueba si una ventana está maximizada, por ejemplo antes de decidir si se llama a WindowRestore o a WindowMaximize.

Parámetros

  • window: Window — La ventana que se comprobará.

Devuelve

true si la ventana está maximizada; false si no lo está, o la ventana es nula o está cerrada.

1 ejemplo: Alternar maximizar en la ventana del gesto

WindowIsMinimized​

WindowIsMinimized(window: Window) → Bool

Comprueba si una ventana está minimizada en la barra de tareas, por ejemplo antes de decidir si se llama a WindowRestore.

Parámetros

  • window: Window — La ventana que se comprobará.

Devuelve

true si la ventana está minimizada; false si no lo está, o la ventana es nula o está cerrada.

WindowMapClientPointToScreenX​

WindowMapClientPointToScreenX(window: Window, x: Integer, y: Integer) → Integer

Convierte un punto del área cliente de una ventana (el interior de la ventana, debajo de la barra de título y dentro de los bordes) en una posición de la pantalla y devuelve su parte horizontal.

Parámetros

  • window: Window — La ventana en cuya área cliente está el punto.
  • x: Integer — Posición horizontal desde el borde izquierdo del área cliente, en píxeles.
  • y: Integer — Posición vertical desde el borde superior del área cliente, en píxeles.

Devuelve

La posición X en la pantalla, en píxeles de la pantalla virtual, o 0 si la ventana es nula o está cerrada.

WindowMapClientPointToScreenY​

WindowMapClientPointToScreenY(window: Window, x: Integer, y: Integer) → Integer

Convierte un punto del área cliente de una ventana (el interior de la ventana, debajo de la barra de título y dentro de los bordes) en una posición de la pantalla y devuelve su parte vertical.

Parámetros

  • window: Window — La ventana en cuya área cliente está el punto.
  • x: Integer — Posición horizontal desde el borde izquierdo del área cliente, en píxeles.
  • y: Integer — Posición vertical desde el borde superior del área cliente, en píxeles.

Devuelve

La posición Y en la pantalla, en píxeles de la pantalla virtual, o 0 si la ventana es nula o está cerrada.

WindowMapScreenPointToClientX​

WindowMapScreenPointToClientX(window: Window, x: Integer, y: Integer) → Integer

Convierte una posición de la pantalla en un punto relativo al área cliente de una ventana (el interior de la ventana, debajo de la barra de título y dentro de los bordes) y devuelve su parte horizontal.

Parámetros

  • window: Window — La ventana desde cuya área cliente se medirá.
  • x: Integer — Posición horizontal en la pantalla, en píxeles de la pantalla virtual.
  • y: Integer — Posición vertical en la pantalla, en píxeles de la pantalla virtual.

Devuelve

La posición X desde el borde izquierdo del área cliente, en píxeles; negativa si el punto está a su izquierda. 0 si la ventana es nula o está cerrada.

1 ejemplo: Describir lo que está bajo el cursor

WindowMapScreenPointToClientY​

WindowMapScreenPointToClientY(window: Window, x: Integer, y: Integer) → Integer

Convierte una posición de la pantalla en un punto relativo al área cliente de una ventana (el interior de la ventana, debajo de la barra de título y dentro de los bordes) y devuelve su parte vertical.

Parámetros

  • window: Window — La ventana desde cuya área cliente se medirá.
  • x: Integer — Posición horizontal en la pantalla, en píxeles de la pantalla virtual.
  • y: Integer — Posición vertical en la pantalla, en píxeles de la pantalla virtual.

Devuelve

La posición Y desde el borde superior del área cliente, en píxeles; negativa si el punto está por encima. 0 si la ventana es nula o está cerrada.

1 ejemplo: Describir lo que está bajo el cursor

WindowMaximize​

WindowMaximize(window: Window) → Bool · Simple

Maximiza una ventana para que ocupe el monitor en el que está, y la activa. Una ventana ocultada con WindowHide se muestra y deja de registrarse como oculta.

Parámetros

  • window: Window — La ventana que se maximizará.

Devuelve

true si la ventana queda maximizada después; false si la ventana es nula o está cerrada, o no se maximizó.

2 ejemplos: Un gesto, varias opciones, Alternar maximizar en la ventana del gesto

WindowMinimize​

WindowMinimize(window: Window) → Bool · Simple

Minimiza una ventana en la barra de tareas. Luego Windows activa la siguiente ventana. Una ventana ocultada con WindowHide se muestra minimizada y deja de registrarse como oculta.

Parámetros

  • window: Window — La ventana que se minimizará.

Devuelve

true si la ventana queda minimizada después; false si la ventana es nula o está cerrada, o no se minimizó.

4 ejemplos: Un gesto, varias opciones, Minimizar todas las ventanas de una aplicación, Bifurcar según el botón del trazo, Cambiar el comportamiento mientras se mantiene presionada Ctrl

WindowMoveTo​

WindowMoveTo(window: Window, x: Integer, y: Integer) → Bool

Mueve una ventana para que su esquina superior izquierda visible quede en una posición de la pantalla, conservando su tamaño. Usa las mismas coordenadas que WindowGetX y WindowGetY; una ventana maximizada no se restaura antes.

Parámetros

  • window: Window — La ventana que se moverá.
  • x: Integer — Nuevo borde izquierdo del marco visible, en píxeles de la pantalla virtual.
  • y: Integer — Nuevo borde superior del marco visible, en píxeles de la pantalla virtual.

Devuelve

true si la ventana se movió; false si la ventana es nula o está cerrada, o se negó a moverse.

3 ejemplos: Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor, Recordar y restaurar la posición de una ventana

WindowRemoveProp​

WindowRemoveProp(window: Window, name: Text) → Integer

Quita una propiedad con nombre de una ventana, ya sea que se haya almacenado con WindowSetPropertyInteger, WindowSetPropertyText o mediante otro software.

Parámetros

  • window: Window — La ventana de la que se quitará la propiedad.
  • name: Text — El nombre de la propiedad.

Devuelve

El valor sin procesar de la propiedad quitada, o 0 si no existía o la ventana es nula. Para una propiedad de texto es un número interno, no el texto.

2 ejemplos: Fijar una ventana encima, Recordar y restaurar la posición de una ventana

WindowResizeTo​

WindowResizeTo(window: Window, width: Integer, height: Integer) → Bool

Cambia el tamaño del marco visible de una ventana, manteniendo su esquina superior izquierda en su lugar. Usa el mismo tamaño que WindowGetWidth y WindowGetHeight; una ventana maximizada no se restaura antes.

Parámetros

  • window: Window — La ventana cuyo tamaño se cambiará.
  • width: Integer — Nuevo ancho visible, en píxeles.
  • height: Integer — Nuevo alto visible, en píxeles.

Devuelve

true si se cambió el tamaño de la ventana; false si la ventana es nula o está cerrada, o rechazó el cambio.

2 ejemplos: Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

WindowRestore​

WindowRestore(window: Window) → Bool · Simple

Devuelve una ventana minimizada o maximizada a su tamaño y posición normales, y la activa. Una ventana ocultada con WindowHide se muestra y deja de registrarse como oculta.

Parámetros

  • window: Window — La ventana que se restaurará.

Devuelve

true si la ventana termina en su tamaño normal, ni minimizada ni maximizada; false si la ventana es nula o está cerrada, o no llegó a ese estado. Una ventana minimizada que antes estaba maximizada vuelve a quedar maximizada, lo que cuenta como false.

3 ejemplos: Alternar maximizar en la ventana del gesto, Ajustar la ventana activa a la mitad izquierda de su monitor, Ajustar una ventana a la celda de una cuadrícula de 3×2 bajo el cursor

WindowSendToBottom​

WindowSendToBottom(window: Window) → Bool · Simple

Mueve una ventana detrás de todas las demás ventanas sin activarla. Una ventana que estaba siempre visible pierde esa opción.

Parámetros

  • window: Window — La ventana que se enviará al fondo.

Devuelve

true si la ventana se movió al fondo; false si la ventana es nula o está cerrada, o rechazó el cambio.

WindowSendToMonitorAt​

WindowSendToMonitorAt(window: Window, x: Integer, y: Integer, mouseFollows: Bool) → Bool

Mueve una ventana al monitor que contiene un punto de la pantalla, conservando su tamaño y su posición relativa al área de trabajo. Una ventana maximizada queda maximizada en el nuevo monitor; si eso la activa, la ventana que estaba activa antes recupera el foco cuando Windows lo permite.

Parámetros

  • window: Window — La ventana que se moverá.
  • x: Integer — Posición horizontal de cualquier punto del monitor de destino, en píxeles de la pantalla virtual. Un punto fuera de todos los monitores elige el monitor más cercano.
  • y: Integer — Posición vertical de cualquier punto del monitor de destino, en píxeles de la pantalla virtual.
  • mouseFollows: Bool — true para mover el puntero del mouse al mismo lugar relativo en el nuevo monitor cuando la ventana se mueve; false para dejarlo donde está.

Devuelve

true si la ventana se movió; false si la ventana es nula o está cerrada, o se negó a moverse.

WindowSendToMonitorIndex​

WindowSendToMonitorIndex(window: Window, index: Integer, mouseFollows: Bool) → Bool

Mueve una ventana a un monitor elegido por su posición en la lista de la llamada más reciente a DisplayMonitorEnumeratedAll, conservando su tamaño y su posición relativa. Una ventana maximizada sigue maximizada; si volver a maximizarla la activa, la ventana que estaba activa antes recupera el foco cuando Windows lo permite.

Parámetros

  • window: Window — La ventana que se moverá.
  • index: Integer — Posición en la lista de monitores, empezando en 0. Los monitores se ordenan de izquierda a derecha y luego de arriba abajo.
  • mouseFollows: Bool — true para mover el puntero del mouse al mismo lugar relativo en el nuevo monitor cuando la ventana se mueve; false para dejarlo donde está.

Devuelve

true si la ventana se movió; false si la ventana es nula o está cerrada, index está fuera del intervalo o DisplayMonitorEnumeratedAll no se ha ejecutado en este script, o la ventana se negó a moverse.

1 ejemplo: Enviar una ventana a un monitor concreto

WindowSendToMonitorName​

WindowSendToMonitorName(window: Window, name: Text, mouseFollows: Bool) → Bool

Mueve una ventana al monitor con una ruta de dispositivo o un nombre descriptivo dados, conservando su tamaño y su posición relativa. Una ventana maximizada sigue maximizada; si volver a maximizarla la activa, la ventana que estaba activa antes recupera el foco cuando Windows lo permite. Útil para diseños que sobreviven a acoplar y desacoplar el equipo.

Parámetros

  • window: Window — La ventana que se moverá.
  • name: Text — La ruta de dispositivo o el nombre descriptivo del monitor, tal como los devuelve DisplayMonitorGetDevicePathFromPoint o DisplayMonitorGetFriendlyNameFromPoint. La ruta de dispositivo es la opción confiable. No se distinguen mayúsculas de minúsculas.
  • mouseFollows: Bool — true para mover el puntero del mouse al mismo lugar relativo en el nuevo monitor cuando la ventana se mueve; false para dejarlo donde está.

Devuelve

true si la ventana se movió; false si ningún monitor conectado tiene ese nombre, la ventana es nula o está cerrada, o la ventana se negó a moverse.

WindowSendToNextScreen​

WindowSendToNextScreen(window: Window, mouseFollows: Bool) → Bool · Simple

Mueve una ventana al siguiente monitor, de izquierda a derecha y luego de arriba abajo, volviendo del último al primero, conservando su tamaño y su posición relativa. Una ventana maximizada sigue maximizada; si volver a maximizarla la activa, la ventana que estaba activa antes recupera el foco cuando Windows lo permite.

Parámetros

  • window: Window — La ventana que se moverá.
  • mouseFollows: Bool — true para mover el puntero del mouse al mismo lugar relativo en el nuevo monitor cuando la ventana se mueve; false para dejarlo donde está.

Devuelve

true si la ventana se movió, incluso cuando solo hay un monitor; false si la ventana es nula o está cerrada, o se negó a moverse.

2 ejemplos: Lanzar una ventana al siguiente monitor, Enviar una ventana a un monitor concreto

WindowSendToPreviousScreen​

WindowSendToPreviousScreen(window: Window, mouseFollows: Bool) → Bool · Simple

Mueve una ventana al monitor anterior, de derecha a izquierda y luego de abajo arriba, volviendo del primero al último, conservando su tamaño y su posición relativa. Una ventana maximizada sigue maximizada; si volver a maximizarla la activa, la ventana que estaba activa antes recupera el foco cuando Windows lo permite.

Parámetros

  • window: Window — La ventana que se moverá.
  • mouseFollows: Bool — true para mover el puntero del mouse al mismo lugar relativo en el nuevo monitor cuando la ventana se mueve; false para dejarlo donde está.

Devuelve

true si la ventana se movió, incluso cuando solo hay un monitor; false si la ventana es nula o está cerrada, o se negó a moverse.

WindowSetActive​

WindowSetActive(window: Window) → Bool

Trae una ventana al frente y le da el foco del teclado; antes la restaura si está minimizada y la muestra si está oculta. Una ventana ocultada con WindowHide deja de registrarse como oculta. Windows puede negarse y hacer parpadear su botón de la barra de tareas en su lugar.

Parámetros

  • window: Window — La ventana que se activará.

Devuelve

true si la ventana pasó a ser la ventana en primer plano; false si Windows se negó, o la ventana es nula o está cerrada.

2 ejemplos: Iniciar un programa, esperar su ventana y actuar sobre ella, Hacer clic en un punto dentro de una ventana

WindowSetAlpha​

WindowSetAlpha(window: Window, alpha: Integer) → Bool

Establece qué tan transparente es una ventana, desde totalmente transparente hasta totalmente opaca. En 255 la ventana deja de ser una ventana superpuesta, lo que también quita cualquier transparencia que el propio programa haya establecido. Las ventanas de programas que se ejecutan como administrador no se pueden cambiar, a menos que el motor también se ejecute así.

Parámetros

  • window: Window — La ventana que se cambiará.
  • alpha: Integer — Opacidad de 0 (totalmente transparente) a 255 (totalmente opaca). Los valores fuera de ese intervalo se ajustan a él.

Devuelve

true si se aplicó la transparencia; false si la ventana es nula o está cerrada, o se rechazó el cambio.

1 ejemplo: Recorrer niveles de transparencia de una ventana

WindowSetBounds​

WindowSetBounds(window: Window, x: Integer, y: Integer, width: Integer, height: Integer) → Bool

Mueve una ventana y cambia su tamaño en un solo paso, con las mismas coordenadas de marco visible que WindowGetX, WindowGetY, WindowGetWidth y WindowGetHeight. Evita el parpadeo de WindowMoveTo seguido de WindowResizeTo.

Parámetros

  • window: Window — La ventana que se moverá y cuyo tamaño se cambiará.
  • x: Integer — Nuevo borde izquierdo del marco visible, en píxeles de la pantalla virtual.
  • y: Integer — Nuevo borde superior del marco visible, en píxeles de la pantalla virtual.
  • width: Integer — Nuevo ancho visible, en píxeles.
  • height: Integer — Nuevo alto visible, en píxeles.

Devuelve

true si se aplicó el cambio; false si la ventana es nula o está cerrada, o rechazó el cambio.

WindowSetEnabled​

WindowSetEnabled(window: Window, enabled: Bool) → Bool

Habilita o deshabilita una ventana o un control. Una ventana deshabilitada omite los clics del mouse y las pulsaciones de teclas hasta que se vuelve a habilitar.

Parámetros

  • window: Window — La ventana o el control que se cambiará.
  • enabled: Bool — true para habilitar la ventana; false para deshabilitarla.

Devuelve

true en cuanto se realiza la solicitud; false si la ventana es nula o está cerrada.

WindowSetPropertyInteger​

WindowSetPropertyInteger(window: Window, name: Text, value: Integer) → Bool

Almacena un entero con nombre en una ventana, por ejemplo para recordar algo sobre esa ventana entre acciones. El motor quita las propiedades que almacenó cuando se cierra.

Parámetros

  • window: Window — La ventana en la que se almacenará el valor.
  • name: Text — El nombre de la propiedad. Elija un nombre distintivo para que no entre en conflicto con las propiedades que usa el propio programa.
  • value: Integer — El entero que se almacenará.

Devuelve

true si se almacenó el valor; false si la ventana es nula o está cerrada.

2 ejemplos: Fijar una ventana encima, Recordar y restaurar la posición de una ventana

WindowSetPropertyText​

WindowSetPropertyText(window: Window, name: Text, value: Text) → Bool

Almacena un valor de texto con nombre en una ventana, que se vuelve a leer con WindowGetPropertyText. El motor conserva el texto exactamente como se dio, incluidas mayúsculas y minúsculas, y puede estar vacío. El motor quita las propiedades que almacenó cuando se cierra.

Parámetros

  • window: Window — La ventana en la que se almacenará el texto.
  • name: Text — El nombre de la propiedad. Elija un nombre distintivo para que no entre en conflicto con las propiedades que usa el propio programa.
  • value: Text — El texto que se almacenará, de 1024 caracteres como máximo.

Devuelve

true si se almacenó el texto; false si la ventana es nula o está cerrada, ya hay 512 valores de texto almacenados o no se pudo establecer la propiedad. Un texto de más de 1024 caracteres detiene la acción con un error.

WindowSetTitle​

WindowSetTitle(window: Window, title: Text) → Bool

Cambia el texto de la barra de título de una ventana. El programa puede volver a cambiarlo en cualquier momento. Un programa que no responde en 1 segundo se deja sin cambios.

Parámetros

  • window: Window — La ventana cuyo título se cambiará.
  • title: Text — El nuevo texto del título.

Devuelve

true si se estableció el título; false si la ventana es nula o está cerrada, no respondió en 1 segundo o el programa lo rechazó.

1 ejemplo: Un gesto, varias opciones

WindowSetTopmost​

WindowSetTopmost(window: Window, topmost: Bool) → Bool · Simple

Mantiene una ventana por encima de todas las ventanas normales, o la devuelve al orden de apilamiento normal, sin activarla.

Parámetros

  • window: Window — La ventana que se cambiará.
  • topmost: Bool — true para mantener la ventana siempre visible encima de las demás; false para devolverla al orden de apilamiento normal.

Devuelve

true si se aplicó el cambio; false si la ventana es nula o está cerrada, o pertenece a un programa que se ejecuta con más privilegios.

1 ejemplo: Fijar una ventana encima

WindowShow​

WindowShow(window: Window) → Bool

Vuelve a mostrar una ventana oculta, como una ocultada con WindowHide, con su tamaño y posición actuales. El motor deja de registrarla como oculta.

Parámetros

  • window: Window — La ventana que se mostrará.

Devuelve

true si se realizó la solicitud de mostrarla; false si la ventana es nula o está cerrada.

WindowToggleTopmost​

WindowToggleTopmost(window: Window) → Bool · Simple

Alterna una ventana entre siempre visible encima de las demás y el orden de apilamiento normal, sin activarla.

Parámetros

  • window: Window — La ventana que se cambiará.

Devuelve

true si se aplicó el cambio; false si la ventana es nula o está cerrada, o rechazó el cambio. No indica en qué estado está ahora la ventana.

WindowWaitClose​

WindowWaitClose(window: Window, timeoutMs: Integer) → Bool

Espera hasta que una ventana se cierre, comprobándolo cada 50 milisegundos. Bloquea el script hasta timeoutMs; detener todas las acciones termina la espera antes.

Parámetros

  • window: Window — La ventana que se esperará.
  • timeoutMs: Integer — Tiempo máximo de espera, en milisegundos, de 0 a 60000. Los valores mayores cuentan como 60000; 0 comprueba una vez sin esperar.

Devuelve

true en cuanto la ventana está cerrada, de inmediato si ya está cerrada o es nula; false si sigue abierta cuando se agota el tiempo o se detiene la espera.

1 ejemplo: Iniciar un programa, esperar su ventana y actuar sobre ella

WindowWaitFor​

WindowWaitFor(pattern: Text, timeoutMs: Integer) → Window

Espera hasta que aparezca una ventana de nivel superior visible cuyo título coincida con una expresión regular, comprobándolo cada 50 milisegundos. Bloquea el script hasta timeoutMs; útil justo después de iniciar un programa.

Parámetros

  • pattern: Text — Una expresión regular que se compara con los títulos de las ventanas, sin distinguir mayúsculas de minúsculas, como 'Notepad$'. Coincide en cualquier parte del título, a menos que se ancle con ^ o $.
  • timeoutMs: Integer — Tiempo máximo de espera, en milisegundos, de 0 a 60000. Los valores mayores cuentan como 60000; 0 comprueba una vez sin esperar.

Devuelve

La ventana coincidente más al frente, o una ventana nula si no apareció ninguna a tiempo o se detuvo la espera. Un patrón no válido detiene la acción con un error.

1 ejemplo: Iniciar un programa, esperar su ventana y actuar sobre ella