تصمميم واجهات المستخدم باستعمال باتش سكربت

لطالما بحث عن  طريقة لادراج  لغة باتش  سكربت  لبناء وتصميم  واجهات المستخدم  كما توجد في لغات مختلفة  في  ال بداية  حاول تقليد  بيئة الدوت نت  وحاولت ادراج ملفات xml  لكن هذه الطريقة  تحتاج  الى  وقت ولغة باش سكربت ليست  مصممة لبناء  تطبيقات سطح المكتب  من  زاوية اخرى سنشهد ان  باتش  سكربت لها  الاحقية في  التحكم  بجميع خصائص نظام التشغيل الويندوز ويمكن دمج  هذه اللغة داخل تطبيقات سطح المكتب  ،  لكن هذا غير كافي  لي كمبرمج  لذا قررت البحث  اكثر  في استغلال ميزاتها  في الوصول  الى جميع التطبيقات المتواجدة  داخل هذا النظام  خلال بحثي  اثار اهتمامي  تطبيق ياتي مع الويندوز  وهو  hta  هذا  التطبيق  الرائع  له ميزة  جميلة جدا  تسمح له بانشاء تطبيقات  سطح المكتب مستخدما html4  ويمكن  ادراج javascript وايضا css2  وvbscript  اي كل ما يحتاج  الية المصمم لبناء تطبيق على  نواة  IE  


دورة لتعلم  html 



في البداية  سنقوم بانشاء ملف فارغ بامتداد  bat  وسيكون  هذا  الملف  اشبه بالسرفر او المحرك الاساسي لتطبيقنا مستخدمين  محرر  النصوص  او نوت باد ++  او اي محرر نصوص اخر  يدعم  الاكتمال  الذاتي  كان افضل هذه الطريقة تشبه الى حد  ما  طريقة الكترون لبناء تطبيقات سطح المكتب  لمختلف  انظمة  التشغيل 

دورة لتعلم الكترون




فقط  هذه المرة  سنقوم بانشاء  ملف يحتوي على  كود  التشغيل وكود التصميم  معا   في داخل ملف  bat  قم  بوضع الكود التالي

<!-- :: Batch section
@echo off
setlocal

echo Select an option:
for /F "delims=" %%a in ('mshta.exe "%~F0"') do set "HTAreply=%%a"
echo End of HTA window, reply: "%HTAreply%"
goto :EOF
-->


الكود يعني   انك تشغل  التطبيق mshta.exe  وتقوم بادخال عليه  كود  معين  في حلقة  مفرغة لكل عنصر   ان صح التعبير  بالعربي

لتعلم باتش  سكربت  هناك  دورة قد  تفيدكم  هناك مشكلة في الصوت والعيب  في يوتوب



الان سنظيف كود خاص بالتصميم  داخل  ملف باتش سكربت  وسيكون الكود كالتالي

<HTML>
<HEAD>
<HTA:APPLICATION SCROLL="no" SYSMENU="no" >

<TITLE>HTA Buttons</TITLE>
<SCRIPT language="JavaScript">
window.resizeTo(374,100);

function closeHTA(reply){
   var fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.GetStandardStream(1).WriteLine(reply);
   window.close();
}

</SCRIPT>
</HEAD>
<BODY>
   <button onclick="closeHTA(1);">First option</button>
   <button onclick="closeHTA(2);">Second option</button>
   <button onclick="closeHTA(3);">Third option</button>
</BODY>
</HTML>



الكود  يحتوي على فانكشن  وثلاث ازرار كل  زر يقوم باغلاق البرنامج
function closeHTA(reply){
   var fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.GetStandardStream(1).WriteLine(reply);
   window.close();
}

يمكن ايضا اخي  الكريم كتابة هذه الفانكشن  بvbscript   ان  كنت تجد هذه اللغة  افضل للاستعمال 


function closeHTA(reply)
  set fso = new createObject("Scripting.FileSystemObject")
   fso.GetStandardStream(1).WriteLine(reply)
   window.close()
end function


يمكنك ايضا اخي  الكريم  من تعلم  هذه السلسلة الخاصة بvbscript




وفي  الاخير  ليكون الملف بالكامل كالتالي : 

<!-- :: Batch section
@echo off
setlocal

echo Select an option:
for /F "delims=" %%a in ('mshta.exe "%~F0"') do set "HTAreply=%%a"
echo End of HTA window, reply: "%HTAreply%"
goto :EOF
-->


<HTML>
<HEAD>
<HTA:APPLICATION SCROLL="no" SYSMENU="no" >

<TITLE>HTA Buttons</TITLE>
<SCRIPT language="JavaScript">
window.resizeTo(374,100);

function closeHTA(reply){
   var fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.GetStandardStream(1).WriteLine(reply);
   window.close();
}

</SCRIPT>
</HEAD>
<BODY>
   <button onclick="closeHTA(1);">First option</button>
   <button onclick="closeHTA(2);">Second option</button>
   <button onclick="closeHTA(3);">Third option</button>
</BODY>
</HTML>



هناك العديد  من النماذج  والطرق  لاستخدام  هذه اللغة بشكل سلسل وافضل  ستجد في هذه  القناة العديد  من الدروس  الخاصة بالبرمجة  

THE DEVELOPER




هذه  مجمعتين  لتعلم البرمجة  وتطويرها 

https://www.facebook.com/groups/devearab/

https://www.facebook.com/groups/jinus/






Post a Comment

0 Comments