مشاهده نسخه کامل
: كمك در مورد ساده نويسي
دوستان من يك پروژه دارم كه تعداد 20تصوير داره و با كليك كردن بر روي هر تصوير تصوير به يك اندازه مشخص بزرگ نمايي ميشه و هر كجاي فرم باشه به وسط فرم ميره
من خودم با كمك دوستان اين پروژه رو نوشته ام ولي يك ايراد بزرگ داره كه اون هم تعداد زياد تايمرها است شما اگه پروژه رو ببينيد متوجه ميشيد كه چي ميگم
يه ايراد ديگه هم كه داره اينه كه براي اينكه هر تصوير به وست صفحه بياد بايد مختصات يك به يك تصاوير رو به دست بيارم كه اين كار بسيار وقت گير و كسل كننده اي هست
از دوستان اگه كسي ميتونه كمكم كنه براي ساده نويسي برنامه و احيانا رفع ايرادهاي پروژه ممنون ميشم
اين هم لينك پروژه
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ](7).rar
يعني تو اين سايت به اين بزرگي يكي نيست به من كمك كنه؟:n27:
دوست عزیز برای هر عکس، دوباره همهی کدها رو تکرار کردی؟!
یعنی گرفتن مختصات کنونی عکس و ست کردن مختصات و سایز جدید عکس رو هر بار برای هر عکس تکرار کردی که اینجوری شده؟!
----------------------
از یه کلاس استفاده کنین و کد ها رو یه بار بنویسید و بارها بهشون ارجاع بدین!
ممنون بابت جوابتون ولي مشكل من هم دقيقا همين مبتدي بونم هست واينكه نميدونم بايد چيكار كنم
شما اگه لطف كننين و برام درستش كنيد ممنون ميشم
سلام....
راستش قولی نمیتونم بدم ولی باشه ببینم چیکارش میتونم بکنم!
فقط اینکه من پروژتون رو دانلود کردم که ببینمش، چیزی ازش حالیم نشد!!!! :)
اگر بیسیک نوشتین که شرمندتونم....!!!
اگر با سیشارپ نوشتین، لطفا کل فایل رو بذارین.... سولوشن حتمی باشه لااقل!
متاسفانه با vb6 نوشتمش روال كارش اينطوره كه با كليك كردن بر روي هر تصوير ،تصوير هر كجاي صفحه كه باشه بزرگنمايي ميشه و به وسط فرم مياد پس از چند ثانيه يك تصوير ديگه ظاهر ميشه و دوباره تصوير هر جايي كه بوده بر ميگرده همونجا اين دستور رو فقط براي تصوير اولي نوشتم
کد هایی که تکرار شده رو قرار بدین تا ببینیم چیکار میشه کرد!!
مخصوصا که میشه کلاس ها رو با سیشارپ نوشت و تو بیسیک استفاده کرده و یا اینکه کد ها رو به هم تبدیل کرد! :)
ممنون:n01:
من براي هر تصوير سه تا تايمر دارم
تايمر اول با كليك كردن روي تصوير فعال ميشه
تصوير در حين زوم شده به وسط فرم ميره
Picture1.Left = Picture1.Left + 30
Picture1.Top = Picture1.Top + 10
Label1.Caption = Label1.Caption + 1
ZoomPicture Picture1, Label1.Caption 'stretch it
If Label1.Caption = 70 Then
Picture1.Visible = False
Image1.Visible = True
Timer1.Enabled = False
Timer2.Enabled = True
End If
تايمر دوم هم تصوير اولي رو غير فعال ميكنه و يه تصوير ديگه رو نشون ميده
Private Sub Timer2_Timer()
Timer3.Enabled = True
Label1.Caption = 0
End Sub
تايمر سوم هم دقيقا برعكس تايمر اول كار ميكنه به اين صورت كه تصوير دوم رو غير فعال ميكنه
تصوير اول رو كوچك نمايي ميكنه و به جاي اولش ميبره
Picture1.Left = Picture1.Left - 30
Picture1.Top = Picture1.Top - 10
Timer2.Enabled = False
Image1.Visible = False
Picture1.Visible = True
Label2.Caption = Label2.Caption - 1
ZoomPicture Picture1, Label2.Caption 'shrink it
If Label2.Caption = -70 Then
Label2.Caption = 0
end if
مشكل اصلي من اينه كه اولا تعداد تايمرها زياد هستند و بايد براي هر تصوير سه تا تايمر بزارم
و مشكل بعدي اينه كه من بايد چيكار كنم كه تصاوير هر جاي فرم كه باشند به وسطفرم بروند و بزرگ نمايي بشوند مثل هموني كه براي تايمر اول نوشتم
samasara
06-02-2013, 17:58
اولا باید برای کم کردن تایمر ها به 3 تا, پیکچر باکس ها رو ایندکس دار کنی دوما برای بزرگ کردن و اینکه نخواد برای هر عکس کد بزنی مقادیر عکس مورد نظرت رو به همون پیکچر باکس اولی که بزرگ می شه بده تا این مشکل هم حل بشه...
samasara
06-02-2013, 18:02
در حقیقت برانامه نویسی پیدا کردن راه هست برای رسید به هدف مورد نظر!! یعنی شما باید برای حل یک مسئله که داری حالا اینجا بزرگ کردنه تصویره که خیلی سادست اما کلا برای موارد دیگه باید فکرد کنید با استفاده از ابزار های یی که دارید چه کاری می تونید انجان بدید
یکم وقت داشتم پروژه ی شما رو تغییر دادم به ساده ترین راه, همون که گفتم بیدم.. دانلود کن ببین مشکلت بالا خره حل میشه یانه
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
فقط يه چيز ديگه
درباره اين پروژه زوم كردن تصوير اگه تصاوير بعد از زوم شدن به سر جاي اصلي خودشون برگردن عالي ميشه
منظورم اينه كه وقتي سايزشون كوچيك ميشه همزمان با كوچيك شدن سايز به جاي اولشون برگردن
كه الان اينطور نيست الان همه ميرن به جاي تصوير شماره يه و بعد سر جاي خودشون نشون داده ميشن
rayansys
06-02-2013, 20:18
برای ساده کردن برنامه ، میتونید از ماژول ها یا تعریف یک روال یا تابع برای برنامه استفاده کنید .
اینجوری خیلی ساده و قابل فهم میشه .
مثلا یک تابعی تعریف کنید که آرگومان های ورودی آن نام شی و مختصات اون باشه . بعد تابع این کارو به راحتی انجام میده و نیازی نیست واسه هر کدوم از تصاویر کد نویسی کنید.
اگه وقت شد واستون درست میکنم.
يادمه كه قديما ما تو دبيرستان (حدودا 17 سال پيش) :3::3:موقعي كه دبيرها مخصوصا دبير رياضي ميومد و درس ميداد ميگفتم يه مثال بزن كه بهتر بفهميم:42:
حالا داداش من راستش من تازه كارم و علم زيادي در باره برنامه نويسي ندارم :24:لطف كن اين چيزي كه گفتي يه مثال براش بزن كه من هم شير فهم بشم :33:
ممنون
samasara
06-02-2013, 21:19
یکم بازی با اعداده و در اوردن یک الگوریتم مناسب برنامه نویسی دفعه ی قبل هم به شما گفتم راه مناسب برای حل مسئله!!! آموزش VB6 خیلی سادست و خیلی هم کار بردیه اما به خوبی vb.net نیست کتاب هایی هم هست که شما می تونی بگیری و آموزش رو از اونا کاملا یاد بگیری که در کتاب فروشی ها فراونه و قیمتی حدود 6000 تا 8000 تقریبا تمام vb6 رو به صورت کلی و جامع آموزش می ده.. که اگر تهیه کنی خیلی میتونه در برنامه نویسی کلا بیسیک کمکت کنه!!!
بگذریم همیشه این رو در نظر داشته باش که اول باید بدونی برنامت داره چی کار می کنه بعد اگر خواستی می تونی اونو هر جور که می خواهی تغییر بدی !!
اینم لینک
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
یکم بازی با اعداده و در اوردن یک الگوریتم مناسب برنامه نویسی دفعه ی قبل هم به شما گفتم راه مناسب برای حل مسئله!!! آموزش VB6 خیلی سادست و خیلی هم کار بردیه اما به خوبی vb.net نیست کتاب هایی هم هست که شما می تونی بگیری و آموزش رو از اونا کاملا یاد بگیری که در کتاب فروشی ها فراونه و قیمتی حدود 6000 تا 8000 تقریبا تمام vb6 رو به صورت کلی و جامع آموزش می ده.. که اگر تهیه کنی خیلی میتونه در برنامه نویسی کلا بیسیک کمکت کنه!!!
بگذریم همیشه این رو در نظر داشته باش که اول باید بدونی برنامت داره چی کار می کنه بعد اگر خواستی می تونی اونو هر جور که می خواهی تغییر بدی !!
اینم لینک
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ممنون
دست گلت درد نكنه واقعا كارت حرف نداره:n12:
samasara
07-02-2013, 23:09
اینم کد دی باگ شده
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
Dim u%, tick As Long
ببخشيد اين علامت چيه؟ u%:n13:
راستي اين قسمت از سوالم درست كار نميكنه:45:
اول اينكه يه مشكل وجود داره كه موقعي بر روي تصا وير كليك ميكنم و تصوير شروع يه بزرگ نمايي و يا كوچك نمايي ميكنن اگه دوباره حالا يا عمدا و يا سهوا بر روي تصوير كليك كنم برنامه به هم ميريزه و جاي تصاوير به هم ميخوره
البته من خودم با استفاده از مخفي كردن و غير فعال كردن كرسر تا حدي اين مشكل رو برطرف كردم كه زياد راضي نيستم حالا اگه شما راه بهتري سراغ داريد ممنون ميشم راهنمايي كنيد
Dim u%, tick As Long
ببخشيد اين علامت چيه؟ u%:n13:
***********
یعنی Dim u As Integer .../// [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
**************************
اون تابع سیستمی SHRestartSystemMB رو فکر کنم اضافه فراخوانی کردید.../// جایی تو کد ها استفاده نشده.../// [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
****************
موفق باشید! [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
samasara
12-02-2013, 15:59
اون تابع سیستمی SHRestartSystemMB رو فکر کنم اضافه فراخوانی کردید.../// جایی تو کد ها استفاده نشده...///
تایید میشه .. خودم نمی دونم چرا اینو فرا خونی کردم شاید شب خستم بوده برای خند گذاشتمش!!!
اما بازم ببخشید از دوست خوبمون واقعا یک چند سرم شلوغ شده و نمی رسم جواب بدم ببین دقیقا بعد از انجاییکه رویداد کلیک موس اتفاق می افته یعنی خط زیر:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
فرم رو غیر فعال کن یعنی بنویس
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
و در تایمر 3 انجایی که تایمر 3 رو غیر فعال می کنه یعنی
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
فرم رو فعال کن یعنی بزار :
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اینجوری مشکل حل میشه من در برنامه ای برات گذاشتم از متغیر boolean به نام stpo_mo می خواستم استفاده کنم که انگاری درست ننوشتمش و اون مشکل هنوز پا برجاست >>ببخشید..
اگر خواستی از اون روش هم میشه اونجوی دیگه صدای هشدار سیستم هم نمیاد.. اگر نتوانستی بگو تا کلا کد درست شده رو بزارم الان وقتم ندارم مگر نه با همون روش برات درست می کردم
بازم ببخشید بابت کد که اشکال داشت..
ممنون دوست من مشكلم حل شد
خسته نباشي:n16::n12:
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.