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