واضح آرشیو وب فارسی:سایت ریسک: ارتباط چند پروژه مالتي مديا با يكديگر AV_3SG 20 شهريور 1386, 01:33با سلام من دارم يه اتوراني رو مي سازم كه يه دستوره move to به صورت حلقه بي نهايت توي اون در حال اجرا هستش . به اين صورت كه چند button در يكGroup هستند واين Group از سمت راست چپ به سمت راست تصوير در حركت هستش و اين كار بينهايت هستش . حالا من كاري كردم كه با بردن موس برروي هر button كل Group ايستاده و بازدن يكي از button ها اوتوران به صفحه بعد بره و در صفحه بعد چيزهاي ديگه اي وجود داره .(البته در صفحه بعد هم ستور move to وجود داره ) حالا اينجا چند تا مشكل وجود داره : اول اينكه چون تعداد button هاي من زياد هستش پس تعداد صفحات مرتبط به اونا هم زيادهستش اين كار باعث ميشه كه اوتوران كند كار كنه . مشكل دوم و اصلي تر اينكه با رفتن به هر صفحه دستور move to از اول شروع مي كنه يعني اينكه اگه Gruop در حال حركت در x=200 باشه با رفتن به صفحه بعدي به x=0 تغيير مي كنه كه اين كار ضعف اوتوران را نشون مي ده . حالا من براي حل اين مشكل اومدم كل اوتوران را در يك صفحه ساختم و از دستور show و hide استفاده كردم .اما اين كار هم جواب نداد . چون اين طوري اوتوران خيلي كند تر كار مي كنه و با توجه به نوع پروژه شايد اين كار بعد ها هم مشكل ايجاد كنه وحالا من فكري كه دارم اينكه اوتوران را به صورت چند قسمتي درست كنم يعن اينكه قسمت پايين اوتوران را كه شامل group و دستور move to مي شه توي يه اتوران درست كنم و قسمت بالايي اوتوران ياهمون بقيه اتوران را به صورت صفحه صفحه يا جدا از هم درست كنم . البته اين كار سخته ولي مي تونه مشكله منو حل كنه در اين صورت با اجراي اوتوران يك اوتوران با ابعاد كوچك تر اجرا مي شه و با زدن هر دكمه از توي اين اتوران كوچك تر اوتوراني كه مكمل اوتوران كوچك تر هست اجرا ميشه . در اين كار اگه ما 5 تا دگمه داشته باشيم با زدن هر كدوم از اين دكمه ها اوتوران مكمل اجرا مي شه ولي مشكلي كه هست اگه كاربر اولين دكمه رو زد اوتوران مكمل اجرا ميشه ولي با زدن دومين دكمه اتوران مكمله ديگه اي به صورت اضافه اجرا مي شود .دراين صورت مشكلي كه وجود داره اينكه كاربر هر بار كه يكي از دكمه ها رو ميزنه اوتوراني به صورت مجزا اجرا مي شه (بدون اينكه اتوران قبلي بسته بشه ) واين مشكلي كه من قادر به حل اون نبودم . من در اينجا فايل اصلي اتوران را براي استفاده و كمك در حل مشكل من قرار داده ام . با تشكر aff - SEvEN 20 شهريور 1386, 02:14در اين كار اگه ما 5 تا دگمه داشته باشيم با زدن هر كدوم از اين دكمه ها اوتوران مكمل اجرا مي شه ولي مشكلي كه هست اگه كاربر اولين دكمه رو زد اوتوران مكمل اجرا ميشه ولي با زدن دومين دكمه اتوران مكمله ديگه اي به صورت اضافه اجرا مي شود .دراين صورت مشكلي كه وجود داره اينكه كاربر هر بار كه يكي از دكمه ها رو ميزنه اوتوراني به صورت مجزا اجرا مي شه (بدون اينكه اتوران قبلي بسته بشه ) واين مشكلي كه من قادر به حل اون نبودم . من در اينجا فايل اصلي اتوران را براي استفاده و كمك در حل مشكل من قرار داده ام . سلام آقا ... در وهلهء اول : مي اصلا کاري به اشيا يا اسکريپت نويسي فرم هاي شما ندارم و نوع عملکرد اون ها در فرم ! بهترين و سريع ترين راه حل ، استفاده از يک فايل کامپايل شده و بعد استفاده از فايل mbd و فراخواني اون هست . مزيت ها به قرار زير هست : 1 - سرعت اجرا بيشتر مي شه به نسبت اينکه بخاين از فراخواني اگزه فايل ها استفاده کنيد . 2 - حجم باز هم چون اجزاي ديگهء پروژه بصورت اگزه کامپايل نمي شن خيلي کمتر مي شه . دستورات براي فرم ها و اجراي يک فرم ديگه مي تونه بصورته کلي اين باشه : دستور در کليد و يا اسکريپت و يا ... براي فراخواني و اجراي فايل mbd RunMBD("<SrcDir>affection-seven1.mbd","NEW_WINDOW") Exit() دستور براي فراخواني فايل اگزه و اجراي اون و خروج از فايل mbd Run("<SrcDir>affection-seven2.exe","") Exit() مثاله پيوست شده رو حتما ببينيد . شبتون بخير باشه ... شادي AV_3SG 20 شهريور 1386, 08:30با سلام و با تشكر از راهنمايي كه كردين خانم خاكچيان فايل پيوستي كه شما براي راهنمايي به من داديد تا حدودي مشكل من رو حل مي كنه ولي من مي خواهم كه يك اوتوران اصلي وجود داشته باشه و از اين اوتوران اصلي چند اوتوران ديگر به صورت جدا گانه اجرا بشه (بدون اينكها دستورات برروي اتوران اصلي اجرا بشوند و اوتوران اصلي بدون تغيير باقي بماند ) . در اين مثال شما براي من يك دستور را اجرا كرديد ممنون مي شوم اگه چند دستور را اجرا كنيد (براي راهنمايي بهتر) با تشكر aff - SEvEN 20 شهريور 1386, 11:17با سلام و با تشكر از راهنمايي كه كردين خانم خاكچيان فايل پيوستي كه شما براي راهنمايي به من داديد تا حدودي مشكل من رو حل مي كنه ولي من مي خواهم كه يك اوتوران اصلي وجود داشته باشه و از اين اوتوران اصلي چند اوتوران ديگر به صورت جدا گانه اجرا بشه (بدون اينكها دستورات برروي اتوران اصلي اجرا بشوند و اوتوران اصلي بدون تغيير باقي بماند ) . در اين مثال شما براي من يك دستور را اجرا كرديد ممنون مي شوم اگه چند دستور را اجرا كنيد (براي راهنمايي بهتر) با تشكر سلام . خواهش مي شه ... ببينيد خيلي ساده هست که . اي مثاله پيوست شده رو لطفا دنلود کنيد ... متوجه عملکردش مي شين ، البته مي فايله asistant رو اجزاي اضافيش رو براي سبکتر شدنش حذف کردم ولي مي تونين دقيقا به همين روش عمل کنين و مشکلي هم پيش نميادش ... در ضمن شما به فرم هاي ديگه دسترسي ندارين گرچه mbd فايل هستن ... يوزره مصرف کننده هم دسترسي نمي تونه داشته باشه چون Add Secure Layer هست ... شما براي امنيت فايله mbd با کليک روي File و انتخاب Compress & Export و با تيک زدنه Add Secure Layer به امنيت مورد نظر مي رسين ... البته فايله خروجي حتما نبايد mbd باشه و با هر پسوند ديگه اي هم ميتونين ذخيرش کنين ، مثلا dll ... و به طبع دستور هم به اين شکل تغيير مي کنه : RunMBD("<SrcDir>About us.dll","NEW_WINDOW") Exit() خب ديگه مثاله پيوست شده همه چيز رو توضيح ميده ... موفق باشيد . gholonbeh 20 شهريور 1386, 11:39با سلام و با تشكر از راهنمايي كه كردين خانم خاكچيان فايل پيوستي كه شما براي راهنمايي به من داديد تا حدودي مشكل من رو حل مي كنه ولي من مي خواهم كه يك اوتوران اصلي وجود داشته باشه و از اين اوتوران اصلي چند اوتوران ديگر به صورت جدا گانه اجرا بشه (بدون اينكها دستورات برروي اتوران اصلي اجرا بشوند و اوتوران اصلي بدون تغيير باقي بماند ) . در اين مثال شما براي من يك دستور را اجرا كرديد ممنون مي شوم اگه چند دستور را اجرا كنيد (براي راهنمايي بهتر) با تشكر دوسته عزيز شما با استفاده از يه متغغير مي توني مشكلت رو حل كني مثالي كه برات گذاشتم رو ببين AV_3SG 20 شهريور 1386, 14:39gholonbeh جان عزيز از اين كه به فكر كمك به من بوديد از شما متشكرم ولي منظور من استفاده از متغير ها نبود . البته خانم خاكچيان تاحدودي منظور من را فهميده اند و با توجه به مثال هايي كه ضميمه كرده اند كمك بزرگي به من كرده اند ولي هنوز مشكل من به طور كامل حل نشده است . خانم خاكچيان ضمن تشكر مجدد از شما به خاطر اينكه سعي در كمك كردن به من و حل مشكل من داريد از شما مي خواهم كه در مثالي كه خود شما براي من قرار داده ايد تغييري بدهيد . در اين مثالي كه شما قرار داده ايد تمام صفحات (Antivirus,Internet,Multimedia,...) همه برروي اوتوران اول واصلي اجرا ميشوند و من نمي خواهم اين كار اتفاق بيفتد . چون در اتوران من دستور Move to وجود دارد و با زدن كليد back در هر يك از صفحات (Antivirus,Internet,Multimedia,...) دستورات اوتوران اصلي از اول شروع به كار مي كند و اين نظم و ترتيب اوتوران را به هم مي زند . اميدوارم كه متوجه منظور من شده باشيد . و از شما بسيار متشكرم . aff - SEvEN 20 شهريور 1386, 15:19ببينيد آقا در اون متد چيزه خاصي وجود نداره براي سبکتر شدن اتورانتون اي روش رو پيشنهاد کردم ... شما با حذفه دستوره Exit ديگه از فرم اول خارج نمي شين و به طبع براي Move to و غيره ... يعني هيچي از اول شروع نمي شه ... ولي نمي تونين در فرم ديگه مثلا روي يه موزيک جديد مانور کنين و صامت بايد باشه فرمه شما ... وگرنه دو تا موزيک تداخل مي کنن با هم . تنها تغييري که در دستور ايجاد مي شه اي شکلي هستش : RunMBD("<SrcDir>Game tools.mbd","NEW_WINDOW") يعني دستوره Exit() حذف مي شه ... و فرمه جديد روي فرم اول اجرا مي شه ولي بهتره دستور رو به اي شکل عوض کنين : RunMBD("<SrcDir>Game tools.mbd","NEW_WINDOW") Minimize() ايجا ديگه فرم مادر فقط minimize مي شه و بسته نمي شه ... ( البته اينا همه سليقه اي هستش ) ... در کل در استفاده از mbd فايل ها اين دو حالت مرسوم هست : 1 - فرم اول بسته بشه و فرمه فايل mbd بر پايه اونچيزي که در مثال ها گذشت و ديدين اجرا بشه . 2 - فرم اول باز بمونه و فرم دوم هم روي فرمه اول اجرا بشه ( فرمه اول همون اگزه فايله اتوران و فرمه دوم mbd فايل هستش ) يادتون باشه در فايل mbd همهء دستورات رو براي استفاده بر روي کامپکت ديسک بايد تغيير بدين . ( منظورم همون SrcDir هستش ) که جايگزين مي شه . اميدوارم منظورتون رو اشتباه نکرده باشم ... عصره خوبي داشته باشيد . AV_3SG 20 شهريور 1386, 15:49خانم خاكچيان باز هم از راهنمايي هاي شما ممنونم . ولي من اين كار را هم تست كردم ولي در اين صورت چند بخش باز ميشه . يعني اينكه اگر شما دكمه Internet tools را زده باشيد internet tools باز مي شود .وحالا اگر ما دكمه Multimedia را هم بزنيم در اين صورت Multi media هم به صورت جدا گانه اجرا مي شود و در اين صورت اين كار درست نمي باشد . يعني ما بايد كاري بكنيم كه بازدن دكمه Multimedia بخش مربوط به multimedia برروي بخش internet جايگزين شود و ديگر بخش Multimedia به صورت جدا گانه اجرا نشود . حالا اگر در اين رابطه به من كمك مجدد بكنيد از ياريتان ممنون مي شوم. با تشكر فراوان
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 793]