просить:
Привет, эксперт по сценарию! Как определить, какой текст выбран в HTA?
--ДЕЛАТЬ
отвечать:
Привет. Вы знаете, большинство людей думают, что написание «Привет, эксперт по сценарию!» Колонна каждый день является одной из самых привлекательных и захватывающих работ в мире. Может быть, это, если эксперты по сценариям, которые пишут этот столбец, не так ленивы. Например, много раз он выбирает проблему, которая, по его мнению, может быть записана в сценарий. Обычно у него нет сценария, который может выполнить задачи, упомянутые в вопросе, но он знает, что такой сценарий может быть написан. Это проверенный метод, но не особенно захватывающий.
Однако этот вопрос немного отличается. Как вы можете определить, какие тексты выбраны в HTA? Увы, мы не можем сказать, можете ли вы определить, какие тексты вы выбрали в HTA. Тем не менее, оказывается, что вы можете быть уверены:
<html>
<голова>
<title> htatest </title>
</head>
<Scriptlanguage = "vbscript">
Subshowseletection
SetObjSelection = document.selection.createrange ()
Msgboxobjselection.text
Заканчивая
</Script>
<тело>
<textarareAname = "scriptarea" rows = 5cols = 40> </textarea> <p>
<inputId = runButtonType = "button" value = "showselection" onclick = "showselection">
</body>
Здесь мы используем маленький, простой HTA, который выглядит так:
Что? Как вы можете не произвести впечатление? Итак, попробуйте. Введите немного текста в этой текстовой области и выделите часть текста:
Теперь нажмите кнопку «Выбор показана». К счастью, вы увидите поле сообщения, в котором говорится, какие тексты были выбраны:
Вы правы: вот как это выглядит.
Итак, как все это делается? Сначала мы создаем HTA с текстовой областью и кнопкой. Мы не обсуждаем детали создания самого HTA, если вам нужна справочная информация, ознакомьтесь с HTA Developers Center или веб -трансляцией на неделе сценариев на HTAS. Сегодня мы сосредоточимся только на подпрограмме, которые вы запускаете, когда нажимаете эту кнопку:
Subshowseletection
SetObjSelection = document.selection.createrange ()
Msgboxobjselection.text
Заканчивая
Правильно: есть только две строки кода. Сначала мы создаем новый объект Textrange; Этот процесс может быть реализован, вызывая метод createrange (), который является частью объекта Document.section: