سؤال

قمت بإنشاء رسم في Flash CS4 يحتوي على نص. لقد قمنا بتضمين الأحرف المناسبة، ثم أنقذها كقسم Movieclip في مكتبتي. ثم قمت بتصديرها إلى ملف SWC.

في كود AS3 الخاص بي (باستخدام Flex SDK / Notepad)، ثم استيراد Movieclip وتعيينه بعض أحداث الماوس حتى أتمكن من استخدامه كزر.

لسوء الحظ، جميع نص الرسومات التي يمكنني استيرادها بهذه الطريقة لها مؤشر الماوس "أنا" والنص قابل للتحديد. هذا يسرق التركيز من تطبيق الفلاش الخاص بي وليس جيدا!

أنا أعرف عندما يكون لدي textfield أستطيع:

var myButton:TextField = new TextField();
myButton.MouseEnabled = false;

ولكن هذا ليس له تأثير عندما يكون movieclip أنا استيراد:

var myButton:MovieClip = new MyImportedButtonGraphic();
myButton.MouseEnabled = false;  // No effect

// Plus some other things I learned:
myButton.selectable = false;    // also no effect
myButton.MouseChildren = false; // No effect

ما الخطأ الذي افعله؟

هل كانت مفيدة؟

المحلول

في فلاش IDE، حدد TextField، انتقل إلى لوحة الخصائص وإلغاء تحديد الزر الذي يحتوي على الأحرف "AB" فيه. التي توقف النص الخاص بك يمكن اختيارها.

نصائح أخرى

إذا كنت تقوم بتحديد مقطع الفيلم الذي يحمل النص غير ممكن، فستتم تمكين الماوس، فأنت بحاجة إلى تعيين كلا الدعم الخاص بك MouseCedabled تعني أن كليب فيلم معين لا يمكن الحصول على أحداث الماوس، ولكنه لا يؤثر على أطفال مقاطع الأفلام (مثل Textfield Inside). Mousechildren يعني أن الأطفال لا يسجلون أحداث الماوس، فهي فقط إرسال من الوالد. لتعطيلها بالكامل، يجب أن يكون كلاهما خطأ.


var myButton:MovieClip = new MyImportedButtonGraphic();
myButton.mouseEnabled = false;
myButton.mouseChildren = false;

نظرا لأن Textfield هو طفل من مقطع الفيلم، فإن خاصية Mousechildren هي ما سيؤثر عليه، ويمكنك فقط تعيين ذلك إلى FALSE وسيظل يعمل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top