كندي دستور settextformat در TLFtextfeild

ghafori1

New Member
باسلام خدمت دوستان
در اكشن اسكريپت 3 با مشكلي برخوردم دست به دامن مجيد آنلاين شدم چيزي پيدا نكردم گفتم سوالم رو مطرح كنم شايد جوابي پيدا شد؟
براي تغيير فرمت قسمتي از متن موجود در برنامه از دستور settextformat استفاده كردم ولي وقتي تعداد قسمت هايي كه بايد تغيير فرمت بده زياد بشه برنامه به قدري كند ميشه كه با ارور فلش مواجه هستم
(انگار حلقه رو سيكل نامحدود به حساب مياره)
وقتي در اينجا چيزي پيدا نكردم فرم هاي خارجي رو سرچ كردم و به دستور العمل زير برخوردم ولي نمي تونم ازش استفاده كنم چون مبتدي هستم؟!
لطفا كمكم كنيد

کد:
[COLOR=#333333][FONT=Tahoma][/FONT][/COLOR][/LEFT]
[COLOR=#333333][FONT=Tahoma][RIGHT][LEFT]public function setTextFormat(format:TextLayoutFormat, begin:int, end:int):void{



var selection:SelectionState = new SelectionState(this._textFlow, begin, end, this._normalFormat);


IEditManager(_textFlow.interactionManager).applyLe afFormat(format, selection);


}



for each (var id:String in ids) {


var element:SpanElement = _textFlow.getElementByID(id) as SpanElement;


if (element) {


element.format = getAppropriateFormatForElement(element);


}


}


_textFlow.flowComposer.updateAllControllers();


[/LEFT]
[/RIGHT]
[/FONT][/COLOR][LEFT]
[/LEFT]







 

akherat

مدیر انجمن
یادمه قبلا استفاده کردم هیچ مشکلی باهاش نداشتم
کد اون یه تیکه رو بزار ببینیم موردی داره یا نه
 

ghafori1

New Member
باعث زحمت شد شرمنده!
[JSS]
find_next_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);

function fl_MouseClickHandler(event:MouseEvent):void
{
txt.setTextFormat(tf0);

while (txt.text.indexOf(search_txt.text,i)>-1)
{
//txt.alwaysShowSelection = true;
i = txt.text.indexOf(search_txt.text,i) + search_txt.length;
trace (txt.text.indexOf(search_txt.text,i) + search_txt.length)

txt.textFlow.interactionManager.selectRange(i - search_txt.length, i);
txt.setTextFormat(tf,i - search_txt.length, i);[/JSS]

اگر امكانش باشه استفاده از دستور id كه در پست قبل عرض شد رو هم توضيح بفرماييد با تشكر
 
آخرین ویرایش:

akherat

مدیر انجمن
من قبلا یه چیزی نوشته بودم واسه سرچ تو متن بود
Tsearch رو جستجو کنید
 

akherat

مدیر انجمن
متن بالا رو فرمت بهش دادم ترکید
دوباره ویرایش کت تو تگ js بزار کد رو قابل خوندن بشه
درستش کردم

تو کدی که گذاشتی یه آرایه باید باشه به اسم ids اون نیست
شاید بیرون فانکشن بوده
 

ghafori1

New Member
فكر كنم الان درست شد!
tsearch رو ديدم براي TLFtext field قابل استفاده نيست!
يك دكمه وجود داره كه با فشردن آن تابع زير اجرا ميشه رو ي متن مورد نظر .

[JSS]
var tf:TextFormat = new TextFormat ()
tf.color =0xFF0000;


find_next_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);
function fl_MouseClickHandler(event:MouseEvent):void
{
while (txt.text.indexOf(search_txt.text,i)>-1)
{
//txt.alwaysShowSelection = true;
i = txt.text.indexOf(search_txt.text,i) + search_txt.length;
trace (txt.text.indexOf(search_txt.text,i) + search_txt.length)

txt.textFlow.interactionManager.selectRange(i - search_txt.length, i);
txt.setTextFormat(tf,i - search_txt.length, i);
}
}[/JSS]
 
آخرین ویرایش:

akherat

مدیر انجمن
چرا هست
یه نسخه برای TLF زده بودن
سرعتشم بد نبود

اسپم هم نکن

ids یه آرایه از چیزهای هست که می خوایی جستجو کنه

ببین بهترین کار و پر سرعترینش استفاده از regxp هست
اگر تسلط به کد نداری برات سخته

یا بگردی Tsearch برای tlf و پیدا کنی من خودم ندارمش هاردم پرید

یا تو قسمت سفارشات مطرح کنی با هزینه اگر کسی وقت داشت برات انجام بده
 

جدیدترین ارسال ها

بالا