الجمعة، ١٧ يونيو ٢٠١١

Text Layout Framework الجزء السادس

عرض محتويات TextFlow
هذا المثال به حاويه واحده container وتحكم بالحاويه واحد controller
ActionScript 3
//الجزء الأول: اوامر  اللازمه 








import flashx.textLayout.container.*;
import flashx.textLayout.elements.*
import flashx.textLayout.conversion.TextConverter;
import flashx.textLayout.conversion.PlainTextExporter;
import flash.display.Sprite;
import flashx.textLayout.compose.FlowComposerBase;








//الجزء الثانى : وضع النص فى الكائن 





var mystring:String = "السلام عليكم";
var mytextflow:TextFlow = new TextFlow();
mytextflow = TextConverter.importToFlow(mystring,TextConverter.PLAIN_TEXT_FORMAT);                                                       //الجزء الثالث : عمل الحاويه 
var mysprite:Sprite =new Sprite();
stage.addChild(mysprite);
 





//الجزء الثالث : عمل الحاويه 





var mysprite:Sprite =new Sprite();





stage.addChild(mysprite);








//// الجزء الرابع : ربط الحاويه بكائن النص 





var mycontainercontroller:ContainerController = new ContainerController(mysprite,50,100);
mytextflow.flowComposer.addController(mycontainercontroller);








// الجزء الخامس : النهاية 





mytextflow.flowComposer.updateAllControllers();





"شكرا"







الجزء الأول : إبدأ كتابة هذا الكود بأوامر import اللازمة لل TLF والتحويل وكله





الجزء الثانى : ننشئ كائن TextFlow  بأى طريقة تعلمناها سابقا ونخصص له النص





الجزء الثالث : ننشئ كائن Sprite الذى سيكون حاويه container لكائن النص .





الجزء الرابع : ننشئ كائن ContainerController ومعاملاته هى كائن Sprite والعرض 200 والإرتفاع 100.





ثم نضيف controller الى كائن TextFlow من خلال flowComposer





الجزء الخامس : ننهى بإستدعاء ()updateAllControllers من خلال flowComposer








نلاحظ أن الكود كثير لعمل حاجه بسيطه ولكن من خلال هذا الكود يمكن إضافة أكثر من حاويه








عرض محتويات  TextFlow فى عدة حاويات








تكملة للمثال السابق سنضيف محتوى أخر وتحكم فى المحتوى أخر للتحكم فى تدفق النص عبر المحتويين





وكل حاوية جديد تحناج الى كائن Sprite , ويضاف الى stage ولذلك ننشئ sprite جديد نضيفه الى Stage





ولذلك نضيف فى المثال السابق للجزء الثالث كما يلى (الجزء المظلل)






ActionScript 3






//الجزءالثالث : عمل الحاويه





var mysprite:Sprite =new Sprite();
var mysprite2:Sprite =new Sprite();
stage.addChild(mysprite);
stage.addChild(mysprite2); 





"شكرا"











وفى الجزء الرابع : (الجزء المظلل) ننشئ ContainerController أخر باسمmycontainercontroller2

ونحددله Sprite الجديد المسمى mysprite2


ثم نربطه بنفس الكائن mytextflow


مع ملاحظة اننا غيرنا إحداثيات x,y للكائن mysprite2 حتى لا يحدث تداخل  بين النصين





ملحوظه هامه : لاتنسى أن يكون النص به كتابة كثيره حتى يتوزع على الكائنين









ActionScript 3





//// الجزء الرابع : ربط الحاويه بكائن النص


var mycontainercontroller:ContainerController = new ContainerController(mysprite,50,100);
var mycontainercontroller2:ContainerController = new ContainerController(mysprite2,50,100);  


 


mysprite2.x=120 ;
mysprite2.y=50 ;


 


mytextflow.flowComposer.addController(mycontainercontroller);
mytextflow.flowComposer.addController(mycontainercontroller2);









"شكرا"











ملحوظه : ترتيب إضافتك لل ContainerControllers الى كائن TextFlow تحدد ترتيب  تدفق الكتابة خلال الحاويات




الشكل النهائى


image



ليست هناك تعليقات:

إرسال تعليق

 
;