hand cursor در پروژه های Flex
  نحوه ی اعمال و نمایش مکان نمای دست بر روی دکمه هایی که در پروژه های Flex ساخته می شوند
   Adobe Flex
   ۱۷۸۲۶
   این مقاله حاوی فایل ضمیمه نمی باشد
   محمد (برنا) پورحسین
   ۱۳۸۸/۲/۲۵
ارسال لینک صفحه برای دوستان ارسال لینک صفحه برای دوستان  اضافه کردن به علاقه مندیها اضافه کردن به علاقه مندیها   نسخه قابل چاپ نسخه قابل چاپ

 

گاهی اوقات بعضی موارد بسیار ساده در Flex و نحوه استفاده از اونها، مبهم تر از اون چیزی که باید باشن، هستن. یکی از این موارد نحوه ی نشان دادن علامت دست (hand cursor) بر روی یک دکمه، یک lable و یا حتی یک کنترل یا کامپوننت هست، در حالی که مکان نمای mouse بر روی اون قرار میگیره... در اصل، نحوه انجام این کار به حد زیادی ساده تر از اونچیزیه که به نظر میاد. فقط کافیه که بدونیم دقیقا از چه خصیصه هایی (attributes) باید استفاده کنیم و اونها رو به چه صورت بر روی کنترل مورد نظر set کنیم.
در مثال زیر میبینید که اولین دکمه، وقتی که مکان نمای mouse بر روی آن قرار میگیره، هیچ تغییری نمیکنه و علامت دست ظاهر نمیشه یعنی در اصل این دکمه قابلیت hand cursor نداره. باید بدونیم که این حالت، حالت پیش فرض flex هست... دکمه دوم، قابلیت hand cursor رو داراست که برای این کار باید دو تا خصیصه ی buttonMode و useHandCursor را به تگ دکمه مورد نظر اضافه کنیم و مقدار هر دو رو true قرار بدیم تا این قابلیت به دکمه مورد نظر اعمال شه؛ و اینکه چرا این دو خصیصه در حالت پیش فرض بر روی دکمه هایی که تو Flex ایجاد میکنیم وجود نداره، من یکی که به شخصه هیچ نظری ندام !! سومین حالت هم، جمله ایه که قابلیت کلیک شدن و علاوه بر اون، نمایش مکان نمای mouse به صورت دست، هنگام over شدن mouse بر روی اون رو، داراست. البته برای این حالت تنها تنظیم دو خصیصه مورد دوم کافی نیست و باید خصیصه دیگه ای به عنوان mouseChildren رو نیز به اون اضافه کرده و اینبار، مقدار این خصیصه رو false قرار بدیم... برای فهم بیشتر موضوع، به مثال زیر دقت کنید :

قطعه کد مورد نظر برای ساخت مثال بالا:


<mx:Button label="(No Hand Cursor) دکمه اول"
  x="10" y="10" width="90%" height="35%"
  fontFamily="Tahoma" fontWeight="normal" fontSize="11"/>
 
 <mx:Button label="(With Hand Cursor) دکمه دوم"
  x="10" y="88" width="90%" height="35%"
  fontFamily="Tahoma" fontWeight="normal" fontSize="11"
  buttonMode="true" useHandCursor="true"/>
 
 <mx:Label text="&quot; یک متن با قابلیـــــت کلیک بر روی آن &quot;"
  x="10" y="170" textAlign="right"
  fontFamily="Tahoma" fontSize="11"
  buttonMode="true" useHandCursor="true" mouseChildren="false"/>

:: همونطور که حتما میدونید با کلیک بر روی دکمه های فوق، هیچ اتفاق خاصی نمی افته !!
:: پروژه مثال فوق رو میتونید از لینک دانلود، در بالای صفحه بگیرید. البته اگه هنوز ثبت نام نکردید، حتما قبلش این کارو بکنید
:: با قرار دادن خصیصه های فوق بر روی دیگر کنترل ها و کامپوننت ها و تغییر مقادیر اونها، میتونید وجود این قابلیت رو برای دیگر اشیا موجود در Flex تست کنید
:: هر چند این موضوع، نحوه اعمال اون و مثال کوچیکش بسیار ساده و مبتدیانه بود، ولی امیدوارم روزی کمک حال دوستی باشه که واقعا نیاز به انجام این کار داره و ذهنشم علاوه بر این، درگیر مسائل پیچیده تری تو پروژه flex خودشه ;)

موفق و موید باشید