بسأل:
مرحبا ، خبير السيناريو! كيف تحدد النص الذي تم اختياره في HTA؟
--يفعل
إجابة:
مرحبا افعل. كما تعلمون ، يعتقد معظم الناس أن كتابة "مرحبًا ، خبير سيناريو!" العمود كل يوم هو واحد من أكثر الوظائف جاذبية وإثارة في العالم. ربما إذا كان خبراء البرمجة النصية الذين يكتبون هذا العمود ليسوا كسولين. على سبيل المثال ، في كثير من الأحيان يختار مشكلة يعتقد أنه يمكن كتابتها في البرنامج النصي. عادةً ما لا يكون لديه نص في متناول اليد يمكنه إكمال المهام المذكورة في السؤال ، لكنه يعلم أنه يمكن كتابة مثل هذا البرنامج النصي. هذه طريقة مثبتة ، ولكنها ليست مثيرة بشكل خاص.
ومع ذلك ، هذا السؤال مختلف بعض الشيء. كيف يمكنك تحديد النصوص التي يتم اختيارها في HTA؟ للأسف ، لا يمكننا معرفة ما إذا كان يمكنك تحديد النصوص التي حددتها في HTA. ومع ذلك ، اتضح أنه يمكنك التأكد:
<html>
<head>
<title> htatest </title>
</head>
<scriptLanguage = "vbscript">
subsholection
setObjSelection = document.selection.creategh ()
msgboxobjselection.text
ينتهي
</script>
<body>
<TextAreaname = "Scriptarea" صفوف = 5Cols = 40> </swertarea> <p>
<inputId = RunButtonType = "button" value = "showselection" onClick = "showselection">
</body>
نحن نستخدم HTA صغير وبسيط هنا ، والذي يبدو هكذا:
ماذا؟ كيف لا يكون لديك انطباع؟ لذلك ، جربها. اكتب بعض النص في منطقة النص هذه وتمييز جزء من النص:
الآن انقر فوق الزر المسمى اختيار العرض. لحسن الحظ ، سترى مربع الرسائل يخبرك بالرسائل التي تم اختيارها:
أنت على حق: هذا ما يبدو.
لذا ، كيف يتم كل هذا؟ نقوم أولاً بإنشاء HTA مع منطقة نص وزر. نحن لا نناقش تفاصيل إنشاء HTA نفسها ، إذا كنت بحاجة إلى بعض المعلومات الأساسية ، تحقق من مركز HTA Developers أو البث الشبكي الأسبوع 3 على HTAs. اليوم سوف نركز فقط على الروتين الفرعي الذي تقوم بتشغيله عند النقر فوق هذا الزر:
subsholection
setObjSelection = document.selection.creategh ()
msgboxobjselection.text
ينتهي
هذا صحيح: لا يوجد سوى سطرين من الكود. أولا نقوم بإنشاء كائن Textrange جديد ؛ يمكن تنفيذ هذه العملية عن طريق استدعاء طريقة createrange () ، والتي تصادف أنها جزء من المستند.