preguntar:
¡Hola, experto en guiones! ¿Cómo determinar qué texto se selecciona en HTA?
--HACER
respuesta:
Hola. Sabes, la mayoría de la gente piensa que escribir un "¡Hola, experto en guiones!" La columna todos los días es uno de los trabajos más atractivos y emocionantes del mundo. Tal vez sea si los expertos en secuencias de comandos que escriben esta columna no son tan flojos. Por ejemplo, muchas veces elige un problema que cree que se puede escribir en un guión. Por lo general, no tiene un script disponible que pueda completar las tareas mencionadas en la pregunta, pero sabe que tal guión se puede escribir. Este es un método probado, pero no particularmente emocionante.
Sin embargo, esta pregunta es un poco diferente. ¿Cómo puede determinar qué textos se seleccionan en el HTA? Por desgracia, no podemos saber si puede determinar qué textos seleccionó en HTA. Sin embargo, resulta que puedes estar seguro:
<html>
<Evista>
<title> htatest </title>
</ablo>
<ScriptLanguage = "vBscript">
Selección de subshows
Setobjselection = document.selection.createrange ()
Msgboxobjselection.text
Endsub
</script>
<Body>
<TextareAname = "scriptarea" filas = 5cols = 40> </textarea> <p>
<inputid = runButtonType = "Button" value = "showSelection" onClick = "showSelection">
</body>
Estamos usando un HTA pequeño y simple aquí, que se ve así:
¿Qué? ¿Cómo no puedes tener una impresión? Entonces, pruébalo. Escriba un texto en esta área de texto y resalte una parte del texto:
Ahora haga clic en el botón etiquetado Show Selection. Afortunadamente, verá un cuadro de mensaje que le dice qué mensajes de texto se han seleccionado:
Tienes razón: así es como se ve.
Entonces, ¿cómo se hace todo esto? Primero creamos un HTA con un área de texto y un botón. No discutimos los detalles de la creación de un HTA en sí, si necesita información de fondo, consulte el Centro de desarrolladores de HTA o la transmisión web de Scripting Week 3 en HTA. Hoy solo nos centraremos en las subrutinas que ejecuta cuando haga clic en este botón:
Selección de subshows
Setobjselection = document.selection.createrange ()
Msgboxobjselection.text
Endsub
Así es: solo hay dos líneas de código. Primero creamos un nuevo objeto Textrange; Este proceso se puede implementar llamando al método creatreange (), que resulta ser parte del documento. Objeto de selección: