دستور فوکوس در فلش

سلام دوستان آیا میشه تو فلش فوکوس کرد؟
من میخوام وقتی فایل خروجی رو اجرا می کنیم اشاره گر موس داخل فیلد متنی قرار بگیره آیا چنین کاری امکانپذیره؟
 
البته یه کدی پیدا کردم که این کار رو انجام میده ولی برای تایپ عبارت مورد نظر در داخل فیلد باید یه بار روی آن کلیک کنیم اینم کدش:
[PHPS]stage.focus = myTextField;[/PHPS]

دوستان میتونن راهنمایی کنن برای حل این مشکل چه باید کرد؟
 
سلام دوست عزیز
با این کد میشه فوکوس کرد
PHP:
selection.setfocus("mytxt");

من از این کد استفاده کردم ولی موقع تست برنامه ارور میده.
نمونه رو براتون پیوست کردم ببینید.فکر کنم این کد برای اکشن اسکریپت 2 هستش من برای اکشن 3 و برای tlf می خوام.
متشکر
 

پیوست ها

  • focos.rar
    6.4 کیلوبایت · بازدیدها: 9
آخرین ویرایش:

wgolzar

Active Member
البته یه کدی پیدا کردم که این کار رو انجام میده ولی برای تایپ عبارت مورد نظر در داخل فیلد باید یه بار روی آن کلیک کنیم اینم کدش:
PHP Code:

stage.focus = myTextField;



دوستان میتونن راهنمایی کنن برای حل این مشکل چه باید کرد؟


دوست عزیز من همین دستور شما رو نوشتم کار کرد .داخل تکست هم کلیک نمی خواست
 

spryboy

کاربر فعال
مکانیزم فوکوس برای TLF متفاوته و البته باگ هم داره که این باگ توی ورژنهای مختلف متفاوته. فعلا این کد رو تست کنید ببینید کارتون راه میوفته
PHP:
myTextField.textFlow.interactionManager.setFocus();
myTextField.setSelection(myTextField.text.length, myTextField.text.length);

فقط دقت کنید موقع تست داخل فلش شاید درست عمل نکنه. یا بیرون تست کنید یا داخل فلش دیباگ کنید(Ctrl+Shift+Enter). برای تکست کلاسیک باید از همون کد خودتون استفاده کنید البته اون هم موقع تست درست عمل نمیکنه.
 
مکانیزم فوکوس برای TLF متفاوته و البته باگ هم داره که این باگ توی ورژنهای مختلف متفاوته. فعلا این کد رو تست کنید ببینید کارتون راه میوفته
PHP:
myTextField.textFlow.interactionManager.setFocus();
myTextField.setSelection(myTextField.text.length, myTextField.text.length);

فقط دقت کنید موقع تست داخل فلش شاید درست عمل نکنه. یا بیرون تست کنید یا داخل فلش دیباگ کنید(Ctrl+Shift+Enter). برای تکست کلاسیک باید از همون کد خودتون استفاده کنید البته اون هم موقع تست درست عمل نمیکنه.

دوست عزیز بسیار عالی بود خیلی وقت بود دنبال همین کدها می گشتم دستتون واقعاً درد نکنه.
ورژن فلش من 5.5 هستش. موقع تست هم کار میکنه موقع خروجی هم کار میکنه. مشکل اصلی من حل شد ولی چندتا سوال هم در این رابطه داشتم که اونا رو هم جواب بدین ممنون میشم.

سوال اول اینکه در این نمونه ای که من قرار دادم سه تا تکست فیلد داریم حال من فیلد اولی رو فوکوس کردم و تعیین کردم فقط یک رقم داخل آن می توان نوشت. اگه بخواهیم با نوشتن تعداد کاراکتر مورد نظر در فیلد اول، اشاره گر موس اتوماتیک به فیلد بعدی بره و آماده ی تایپ باشه چیکار کنیم؟ یعنی ما روی فیلد دومی کلیک نکنیم و خود اشاره گر بره به فیلد بعدی و همچنین بعد از پرکردن فیلد دوم به فیلد سون بریم.

سوال دوم هم اینکه این باگ و دیباگ که توضیح دادین کارش چیه من تا بحال باهاش کار نکردم.

سوال سوم هم چه فرقی بین خروجی گرفتن از قسمت پابلیش ستینگ و اکسپورت هستش؟
 

spryboy

کاربر فعال
جواب سوال اول
این کد، فوکوس رو بعد از تکمیل شدن فیلد اول (در اینجا txt1) روی فیلد دوم (در اینجا txt2) میبره. همین کد رو برای همه ی فیلدها کپی کنید و اسامی فیلدها رو متناسب با برنامه تون تغییر بدید.[JSS]txt1.addEventListener(Event.CHANGE, changeFocusTxt1);
function changeFocusTxt1(e:Event):void
{
if (e.target.text.length == e.target.maxChars)
{
with (txt2)
{
textFlow.interactionManager.setFocus();
setSelection(text.length, text.length);
}
}
}[/JSS]
جواب سوال دوم

به طور خلاصه بخوایم توضیح بدیم، باگ یعنی "عیب" و دیباگ یعنی "رفع عیب". البته اون باگ و دیباگی که من مطرح کردم ربطی به همدیگه نداشتن. منظور من این بود که عملکرد فوکوس در TLF اشکال داره و این اشکال در وژنهای مختلف TLF متفاوته.منظور من ورژنهای مختلف خود TLF بود، نه فلش. در حال حاضر TLF سه ورژن داره که ورژنهای 1 و 2 در نسخه های مختلف فلش استفاده شدن. در واقع از اون دو خط کد که برای فوکوس استفاده کردیم، قاعدتا خط اول باید فوکوس رو انجام بده و البته این کار رو هم میکنه اما کرسر گم میشه و معلوم نیست کجا میره. خط دوم برای انتخاب یک قسمت از متن موجود در یک فیلد هست ولی ما در اینجا استفاده کردیم تا بره و کرسر رو برداره بیاره بذاره سر جاش.
در مورد اینکه گفتم بجای تست (Ctrl+Enter) دیباگ (Ctrl+Shift+Enter) کنید، برای این بود که موقع دیباگ از پلیر داخلی فلش استفاده نمیشه و فلش پلیر، جداگانه اجرا میشه. در این حالت همه عملکردها اجرا میشن. مثلا اگر کد فول اسکرین داشته باشید، برنامه فول اسکرین میشه. البته همون طور که از اسمش معلومه دیباگر برای رفع عیوب موجود در کد برنامه ست. که یک مبحث نسبتا طولانیه.

جواب سوال سوم

فرقی نباید داشته باشن. وقتی اکسپورت میکنید از همون تنظیمات پابلیش ستینگ استفاده میشه.

موفق باشید
 
آخرین ویرایش:

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

بالا