لیست باکس ( ListBox) :
---------------------------------------
شي ListBox قابليت نشان دادن و ليست كردن تعدادي از قسمتها و انتخابها را فراهم مينمايد كه كاربر بر حسب نياز ميتواند يكي يا بيشتر از يك قسمت از انتخابها را برگزيند. هدف اوليه MMB از نهادن شي List Box براي نشان دادن ليست اجرايي ( Play List ) فايلهاي صوتي است. با اين حال اين شي ميتواند به عنوان يك ListBox معمولي با قابليت چندين انتخابي عمل نمايد. ميتوانيد ListBox را توسط متغيرهاي رشتهاي، متون، آرايهها و ليست اجرايي صوتي پر نماييد. به دنبال اضاف شدن اين شي به برنامه انجام كارهاي مختلف وكارآمدي امكان پذير شده است.نكته حائز اهميت در اين قسمت اينست كه براي تعامل با اين شي توسط فرامين مربوطه حتما لازم است تا شي قابل رؤيت باشد،بدين معنا كه در هنگام طراحي نبايد آنرا مخفي ساخت.اما چنانچه شرايطي پيش بيايد كه مجبور باشيم اين شي را مخفي كنيم مي توانيم آن را به خارج از محدوده ي صفحه در زمان طراحي انتقال دهيم تا مجازا اين شي را پنهان كرده باشيم.ياد آوري مي شود كه با استفاده ماهرانه از اين شي به همراه EditBox مي توان شي ComboBox را ايجاد نمود.
-
خصوصيت هاي شي ListBox
Style
اين قسمت چگونگي شمايل ListBox را معين ميكند.
-Scroll bar( نوار پيمايش )
-Multi selection( چند انتخابي )
-Client Edge ( خط حاشيه )
-Static Edge ( لبههاي ايستا )
-Modal Frame( لبههاي برجسته )
-Border( حاشيه )
Properties
اين قسمت يكسري ديگر از پارامترها را تنظيم ميكند.
-Drag & Drop
اين قسمت قابليت كشيدن و رها كردن را براي List Box فعال ميكند.
-Hide Numbers
عددها را در كنار مؤلفهها نمايان نميسازد.
-Search for ID tags
اين گزينه به جستجوي tag فايلهاي OGGو MP3 ميپردازد.
-Hide time
اين گزينه زمان فايلهاي صوتي را به هنگام قرارگيري در ليست نشان نميدهد.
-Color
در اينجا ميتوان رنگ زمينه (Background) و متن (Text) شي ListBox را تعيين كرد.
فرامین شی ListBox
-ListBoxAddItem("Object", "Parameter")
اين فرمان سبب اضافه شدن يك گزينه به ListBoxمي شود.پارامتر اول شي ListBox را معين مي كند.
در قسمت پارامتر دوم اين فرمان مي توانيد از عبارت هاي ذيل استفاده نماييد:
- متن (this is test )
- متغير رشته اي (text$ )
- آرايه ي رشته اي (text[ ]$ )
- فايل متني (C:\My Documents\ testfile.txt )
- ليست اجرايي صوتي
(<SrcDir>\ mix.m3u) (*. Pls,m3u *.m3l)
- Reset جهت پاك كردن محتويات شي ListBox
-RANDOMIZE جهت تصادفي پر كردن ListBox
مثال:
کد:
OpenFile("Play Lists(*.m3l;*.m3u;*.pls)|*.m3l;*.m3u;*.pls|All Files|*.*||","*.m3l;*.m3u;*.pls")
ListBoxAddItem("ListBox","RESET")
ListBoxAddItem("ListBox","OpenFile$")
ListBoxDeleteItem(“Object”,”Number”)
اين فرمان بر اساس شماره داده شده در قسمت Number گزينه اي را پاك مي نمايد چنانچه بخواهيم تمامي محتويات پاك شود از عدد 1- استفاده مي كنيم.
نكته: شماره گذاري گزينه هاي ListBox هميشه از 1 يك شروع مي شود.
اين مثال پيشرفته گزينه هاي انتخاب شده را توسط دكمه Delete از صفحه كليد پاك مي كند.
مثال:
-يك شي Script ايجاد نماييد و ميانبر آن را به كليد Delete نسبت دهيد.
-اسكريپت هاي ذيل را در شي اسكريپتي كپي نماييد.
- يك ListBox در صفحه ايجاد نماييد.
کد:
ListBoxGetSelectedItems("ListBox","SelItemsArray$, NumSelItemsArray$,#,NumOfSelItems")
for i=NumItems to 1
numitem$ = GETARRAYITEM(NumSelItemsArray$,#,i)
numitem = VAL(numitem$)
ListBoxDeleteItem("SongList","numitem")
next i
-ListBoxSelectItem("Object" , "Number")
اين فرمان سبب انتخاب گزينه اي بر اساس پارامتر Number مي شود. چنانچه بخواهيد تمامي آيتم ها انتخاب شود بايد در قسمت پارامتر اين فرمان از عدد (1-) استفاده نماييد.
مثال:
کد:
ListBoxSelectItem ("ListBox" , "3" )
-ListBoxDeselectItem("Object" , "Number")
اين فرمان بر خلاف فرمان قبل عمل مي نمايد بدين معني كه بر اساس پارامتر Number گزينه يا گزينه هايي را از حالت انتخاب خارج مي نمايد جهت درآوردن تمامي گزينه ها از حالت انتخاب بايد از عدد 1- در قسمت Number استفاده كرد.
مثال:
کد:
ListBoxDeselectItem("List Box" , " -1")
-ListBoxGetItem("Object" , "Param1.Param2,Param3,Param4")
از اين فرمان براي دريافت تمام گزينه هاي يك List Box بهره برده مي شود. اولين پارامتر بايد يك متغير رشته اي جهت نگهداري رشته گزينه ها باشد كه اين رشته ها توسط يك كاراكتر محدودگر از هم متمايز مي شود. همچنين پارامتر دوم هم بايد يك متغير رشته اي باشد كه بتواند تقدم گرينه ها را ذخيره نمايد. پارامتر سوم كاراكتر محدودگر را مشخص مي نمايد. و پارامتر چهارم كه بايد متغير عددي باشد براي دريافت تعداد گزينه ها است.
مثال:
کد:
ListBoxGetItems("ListBox","ItemsArray$,NumItemsArr ay$,#,NumOfAllItems")
for i=1 to NumOfAllItems
GetItem$ = GETARRAYITEM(ItemsArray$,#,i)
Message("Selected Item...","GetItem$")
next i
- ListBoxGetSelectedItems("Object", "Param1,Param2,Param3,Param4")
اين فرمان محتوي گزينه ي انتخاب شده را دريافت مي دارد. اولين پارامتر اين دستور بايد يك متغير رشته اي باشد كه جهت نگهداري محتوي گزينه ها است.همچنين پارامتر دوم بايد يك متغير رشته اي باشد كه تقدم گزينه ها را دريافت دارد. پارامتر سوم كاراكتر محدودگر جهت سوا كردن رشته ها از هم مي باشد و پارامتر چهارم بايستي يك متغير عددي باشد تا تعداد گزينه ها را دريافت كند.
مثال:
کد:
ListBoxGetSelectedItems("ListBox","SelItemsArray$, NumSelItemsArray$,#,NumOfSelItems")
for i=1 to NumOfSelItems
SelItem$ = GETARRAYITEM(SelItemsArray$,#,i)
Message("Selected Item...","SelItem$")
next i
- ListBoxSortItems("Object","Type")
اين فرمان مولفه هاي شي ListBox را بر اساس نام (NAME) ، زمان (TIME) ويا برعكس (REVERSE) يا تصادفي (RANDOM) مرتب مي كند. اولين پارامتر اين دستور براي مشخص كردن نام شي ListBox است و در قسمت پارامتر دوم مي توان از كلمات گفته شده بالا برحسب نياز استفاده كرد.
مثال:
کد:
ListBoxSortItems(“ListBox”,”NAME”)
-ListBoxMoveItem("Object","Number")
اين فرمان حالت انتخاب را به جايي كه توسط پارامتر دوم معرفي مي شود انتقال مي دهد. پارامتر اول اين فرمان براي تعيين نام شي ListBox است و پارامتر دوم موقعيت حركت را مشخص مي كند. پارامتر دوم هم مي تواند عدد باشد و هم متغير عددي.
توجه: شماره مؤلفه هاي ListBox هميشه از يك شروع مي شود.
-ListBoxParam("Object","Switch")
هنگامي كه بخواهيم يكسري از خصوصيات شي List Box را كه در ادامه بحث مي شود تنظيم كنيم از اين فرمان استفاه مي كنيم. به طور معمول پارامتر اول براي نام شي است و در قسمت پارامتر دوم كلمات زير جاي مي گيرد كه به ترتيب با انتساب آنها با ONو OFF مي توان آن خصوصيت را فعال يا غير فعال كرد.
RAG & DROPاين پارامتر جهت ايجاد و حالت كشيدن و انداختن مي باشد كه به وسيله آن مي توان آيتمي را با موس جا به جا كرد.
:NUMBERSاز اين پارامتر جهت نشان دادن / حذف اعداد كنار آيتم هاي ليست استفاده مي شود.
:TIMES از اين پارامتر جهت نشان دادن / حذف زمان كنار آيتم هاي ليست استفاده مي شود.
:BACKGROUNDاز اين پارامتر براي تعيين رنگ زمينه بر اساس كانال RGB استفاده مي شود .با انتساب عدد مورد نظر رنگ تعيين مي شود.
:TEXT اين پارامتر براي تعيين رنگ متن ها بر اساس كانال RGB مي باشد.
:IDTAGSاين پارامتر هم در صورت فعال بودن تگ هاي ID فايل هاي صوتي را نشان مي دهد. جهت فعال سازي و غير فعال سازي اين پارامتر مي توان از OFF/ON استفاده كرد.
مثال:
کد:
ListBoxParam("ListBox","NUMBERS = OFF”)
ListBoxParam("ListBox","TIMES = ON”)