إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

جولة حول أكشن سكريبت 3 التعامل مع النصوص جزء 2

تقليص
هذا الموضوع مغلق.
X
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • جولة حول أكشن سكريبت 3 التعامل مع النصوص جزء 2

    [frame="2 98"]


    بسم الله الرحمن الرحيم
    الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين
    السلام عليكم ورحمة الله وبركاته





    قلنا أن لغة اكشن سكريبت 3 توفر ثلاثة تقنيات للتعامل مع تنسيقات النصوص Text Formatting وهي على النحو التالي:

    htmlText
    flash.text.TextFormat
    flash.text.StyleSheet



    htmlText : تتيح لنا هاته الخاصية استغلال أوسمة html والتي تعرف بـــ HTML tags المثال أسفله سيوضح الأمر


    [HTML]
    var monTexte:TextField = new TextField();
    monTexte.autoSize = TextFieldAutoSize.LEFT;
    monTexte.text = "هذا نص عادي";
    addChild ( monTexte );
    [/HTML]

    لاحظ هنا الخاصية text. مشغل الفلاش يرجع قيمة سالبة بدون اي معلومات لتنسيق النص
    عكس ذلك اذا اضفنا الخاصية htmlText يرجع مشغل الفلاش قيمة النص مع مكتبة " تاقات
    الهشتمل" HTMLTags ان شاء الله وصلت الفكرة عموما اليك المثال التوضيحي

    افتح برنامج الفلاش حدد الطبقة الأولى اضغظ F9 الصق الكود التالي واضغط Ctrl+ Enter

    [HTML]
    var monTexte:TextField = new TextField();
    monTexte.autoSize = TextFieldAutoSize.LEFT;
    monTexte.text = " HTML السلام عليكم ورحمة الله وبركاته هذا نص بصيغة ";
    addChild ( monTexte );
    trace( monTexte.text );
    [/HTML]

    اغلق الملف عدد للكود غير السطر الأخير من الكود بالسطر التالي

    [HTML]
    trace( monTexte.htmlText );
    [/HTML]

    اذن نلاحظ أنه عند استغلال الخاصية htmlText تمكننا من تحكم وتنسيق اكثر بالنصوص من خلال تاقات الهشتمل HTML Tags

    مثال يمكن تغيير اللون باضافة الخاصية textColor

    تحت السطر الأول من الكود السابق اضف الكود التالي :
    [HTML]
    monTexte.textColor = 0x990000;
    [/HTML]


    اذن نستخلص أنه بامكاننا ادراج محتوى نصي بصيغة HTML عبر مختلف خصائص الكلاس TextField
    وذلك باستغلال الخاصية htmlText لاحظ الكود التالي :

    [HTML]
    var monTexte:TextField = new TextField();
    monTexte.autoSize = TextFieldAutoSize.LEFT;
    monTexte.textColor = 0x990000;
    monTexte.htmlText = "abc4web. <b>net</b>";
    addChild ( monTexte );
    [/HTML]

    بعد المعاينة غير الان كامل السطر قبل الأخير بالكود التالي :

    [HTML]
    monTexte.htmlText = "abc4 <font color='#FF0000'>web.</font> <b>net</b>";

    [/HTML]

    هل لاحظت أخي الكريم أننا نستطيع تفيير خصائص النص أو الكلمات من خلال اضافة لون معين أو حجم .... الخ ...

    ملاحظة :

    خاصية html في كلاس TextField لاتوجد اطلاقا في ActionScript 3 بل انه بمجرد الاعلان عن خاصية
    htmlText نقدر نستغل كل تاقات الهشتمل HTML Tags التي يدعمها البرنامج


    classe TextFormat

    هذا الكلاس يحتوي على خصائص عديدة تساعد على تحكم أكثر بالنصوص وطبعا لامكانية استغلاله يجب
    كخطوة أولى إنشاء الكائن TextFormat ثم نتولى بعد ذلك تحديد خصائص التنسيق نوضح الأمر بالكود

    [HTML]
    var monTexte:TextField = new TextField();
    monTexte.autoSize = TextFieldAutoSize.LEFT;
    monTexte.text = "abc4web.net/vb";
    addChild ( monTexte );
    // انشاء نسخة من كلاس TextFormat وحفظه في متغير باسم miseEnForme
    var miseEnForme:TextFormat = new TextFormat();
    // استدعاء خاصية سماكة الخظ
    miseEnForme.bold = true;
    //تغيير حجم الخط
    miseEnForme.size = 25;
    //تغيير نوع الكتابة
    miseEnForme.font = "Verdana";
    // أمر تطبيق التنسيقات الجديدة
    monTexte.setTextFormat( miseEnForme );
    [/HTML]

    لاحظ اخي الكريم أنه يمكن ايضا تطبيق التنسيقات على كلمة وسطة جملة نريد مثلا تكبير كلمة Web فقط
    غير السطر الأخير بالسطر التالي :

    [HTML]
    monTexte.setTextFormat( miseEnForme, 4, 7);
    [/HTML]

    يعني هنا برنامج الفلاش يحسب الحروف كلها وقيمة 4 هي بداية الاندكس و7 هي نهاية الاندكس
    غير مثلا 4 الى 3 و7 الى 6 وعاين وستفهم النتيجة


    classe StyleSheet


    هاته الطريقة متقدمة نوعا باعتبار أنه يجب تجهيز مستند خارجي باكواد css وتحفظ بهذا الامتداد ويتم استدعاءها في برنامج
    الفلاش عن طريق URLLoader وبالتالي استغلال كامل ميزات css وما تحتويه من مؤثرات جمالية على النصوص ويمكن ايضا
    التعامل مباشرة مع هاته الخصائص عن طريق الاكشن سكريبت ولاحظ الطريقة في الجزء الثالث من الموضوع .



    نواصل غدا ان شاء الله الجزء الثالث


    استودعكم الله





    [/frame]

  • #2
    رووعة الشرح وطبقت أولا بأول مع الاكواد
    ولكن يا ريت توضح لنا ايه فائدة ادخال الاكشن سكربت للنصوص
    فيما يخص المستخدم البسيط للفلاش
    الخصائص دى موجودة فى البرنامج نفسه وبمنتهى السهولة نتحصل عليها وبدون أكواد
    فما الميزة فى ادخال الاكشن سكربت للنصوص؟

    تعليق


    • #3
      المشاركة الأصلية بواسطة خادم المسلمين مشاهدة المشاركة
      رووعة الشرح وطبقت أولا بأول مع الاكواد
      ولكن يا ريت توضح لنا ايه فائدة ادخال الاكشن سكربت للنصوص
      فيما يخص المستخدم البسيط للفلاش
      الخصائص دى موجودة فى البرنامج نفسه وبمنتهى السهولة نتحصل عليها وبدون أكواد
      فما الميزة فى ادخال الاكشن سكربت للنصوص؟


      مرحبا يا طيب

      طبعا فيه فائدة كبيرة لان لغة الاكشن سكريبت هي تخول لك أن يتفاعل المستخدم مع الماوس
      يعني تبرز له فقرة تبرز له نص يتغير النص تتغير الاجابة الخ ... يعني استخدامات كبيرة جدا

      مثال لما انت تكتب نص يدويا في الفلاش وتربطه بز هل يقدر مثلا يصبح فقرة منسقة بها معلومات
      أو ترفق به صورة وما الى ذلك طبعا لا لكن بالاكشن تتحكم جيدا في ابراز النصوص

      نوضح افتح برناج الفلاش في الطبقة الأولى ارسم زر وحوله الى button واعطه اسم btn1
      اضف طبقة ثانية للاكشن اضفط f9 والصق الكود التالي

      [HTML]
      function showtext()

      {
      var monTexte:TextField = new TextField();
      monTexte.border = true;
      monTexte.text = " اخي الكريم يجب الانتباه جيدا الى الدرس ";
      monTexte.width = 250;
      monTexte.height = 30;
      monTexte.x = 150;
      monTexte.y = 200;
      monTexte.wordWrap = true;
      addChild ( monTexte );
      var miseEnForme:TextFormat = new TextFormat();
      miseEnForme.bold = true;
      miseEnForme.size = 18;
      miseEnForme.font = "Arial";
      monTexte.setTextFormat( miseEnForme );
      }

      btn1.addEventListener (MouseEvent.CLICK, onClick);

      function onClick(event:MouseEvent):void

      {
      showtext()
      }
      [/HTML]

      هذا مثال بسيط جدا لكن امكانيات الاكشن مع النصوص وتأثيراتها كبيرة جدا جدا يا طيب

      تعليق


      • #4
        المشاركة الأصلية بواسطة azizsoft مشاهدة المشاركة
        مرحبا يا طيب

        طبعا فيه فائدة كبيرة لان لغة الاكشن سكريبت هي تخول لك أن يتفاعل المستخدم مع الماوس
        يعني تبرز له فقرة تبرز له نص يتغير النص تتغير الاجابة الخ ... يعني استخدامات كبيرة جدا

        مثال لما انت تكتب نص يدويا في الفلاش وتربطه بز هل يقدر مثلا يصبح فقرة منسقة بها معلومات
        أو ترفق به صورة وما الى ذلك طبعا لا لكن بالاكشن تتحكم جيدا في ابراز النصوص

        نوضح افتح برناج الفلاش في الطبقة الأولى ارسم زر وحوله الى button واعطه اسم btn1
        اضف طبقة ثانية للاكشن اضفط f9 والصق الكود التالي

        [html]
        function showtext()

        {
        var montexte:textfield = new textfield();
        montexte.border = true;
        montexte.text = " اخي الكريم يجب الانتباه جيدا الى الدرس ";
        montexte.width = 250;
        montexte.height = 30;
        montexte.x = 150;
        montexte.y = 200;
        montexte.wordwrap = true;
        addchild ( montexte );
        var miseenforme:textformat = new textformat();
        miseenforme.bold = true;
        miseenforme.size = 18;
        miseenforme.font = "arial";
        montexte.settextformat( miseenforme );
        }

        btn1.addeventlistener (mouseevent.click, onclick);

        function onclick(event:mouseevent):void

        {
        showtext()
        }
        [/html]

        هذا مثال بسيط جدا لكن امكانيات الاكشن مع النصوص وتأثيراتها كبيرة جدا جدا يا طيب
        سكربت رائع فعلا وكدة تتضح اهمية وجدوى دراسة الاكشن سكربت فى النصوص
        طيب

        لو حبيت كلما ضغط على الزر نفسه يولد سؤلا او جملة جديدة؟
        هنزود ايه على السكربت تانى ؟
        هل يلزم عمل مصفوفة أم ان هناك حل برمجى أخر؟

        تعليق


        • #5
          بسم الله الرحمن الرحيم

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

          بالتوفيق

          تعليق


          • #6
            :teslam_2:

            جزاك الله خيرا أخانا عزيز

            دروس رائعة ماشاء الله

            بارك الله في جهودك

            تعليق


            • #7
              بارك الله فيك اخانا عزيز على هذه الجولات والتي ستنتهي بالإحتراف إن شاء الله

              .

              تعليق


              • #8
                بسم الله الرحمن الرحيم

                بارك الله فيكم اخوتي أبو يوسف وأبو همام

                نورتم بحضوركم الكريم

                وفقكم الله

                تعليق


                • #9
                  شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .

                  تعليق

                  مواضيع تهمك

                  تقليص

                  المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 06-08-2025 الساعة 11:33 PM
                  المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 06-04-2025 الساعة 05:29 PM
                  المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 05-31-2025 الساعة 10:07 PM
                  المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 05-30-2025 الساعة 11:48 PM
                  المنتدى: التصنيع والانتاج نشرت بواسطة: HaMooooDi الوقت: 05-30-2025 الساعة 09:36 AM
                  يعمل...
                  X