PDA

View Full Version : اجرا برای اولین بار



بمب منطقی
شنبه 04 مرداد 1382, 14:49 عصر
با سلام

اگه میشه بگین چطوری میتونم فرم یا کادری رو فقط برای اولین بار که برنامه اجرا شد ظاهر کنم ودر دفعات بعدی ظاهر نشه . :?


پیشاپیش قربونه همه you ها

سعید قدیری مقدم
شنبه 04 مرداد 1382, 14:57 عصر
سلام من دقیقا منظور شما رو نفهمیدم :oops: اما اگر منظورتون این باشه که فایل exe شما وقتی اجرا شد دیگه قابل اجرا نباشه میتونی دستور زیر رو به Form_Load برنامه خودتون اضافه کنید مشکل شما برطرف میشه :wink:

If App.PrevInstance Then End

Voldemort
شنبه 04 مرداد 1382, 15:37 عصر
منظور شما Splash است که می توانید در کتابهای مختلف و یا در MSDN مطالبی را در مورد ساخت آنها پیدا کنید

بمب منطقی
شنبه 04 مرداد 1382, 17:31 عصر
سلام من دقیقا منظور شما رو نفهمیدم :oops: اما اگر منظورتون این باشه که فایل exe شما وقتی اجرا شد دیگه قابل اجرا نباشه میتونی دستور زیر رو به Form_Load برنامه خودتون اضافه کنید مشکل شما برطرف میشه :wink:

If App.PrevInstance Then End

با سلام مجدد

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

به طور مثال برنامه ای رو در نظر بگیرید که بعد از نصب بر روی هارد کامپیوتر اونو اجرا می کنیم پس این اولین باری است که برنامه اجرامی شود.خوب تا اینجا درست.حالا در نظر می گیریم که بلا فاصله بعد از اجرا, برنامه فرمی را ظاهر میکند که در آن باید به وسیله کادر drive و dir مسیری را مشخص کنیم که برنامه بعد از اون و همچنین در اجراهای بعدی , باید عملایات خودش رو (به طور مثال, حذف یا اضافه کردن بعضی از فایلهای مورد نیاز برنامه) در آن مسیر انجام دهد.
حالا نتیجه می گیریم که بعد از این لازم نیست این فرم ظاهر شود و به طور تکرار مسیر فعال برنامه را مشخص کنیم .
پس این فرم فقط در دو صورت باید دوباره ظاهر شود:
1- وقتی برنامه از هارد ,uninistal و پس از آن دوباره نصب و اجرا بشه.
2- زمانی که مسیر فعال برنامه توسط کاربر برنامه پاک بشه.

اگه ممکنه توضیح خودتون رو با یه مثال بگین :oops:

قربون you

Abbas Arizi
شنبه 04 مرداد 1382, 18:05 عصر
خب این همون Splash هست که Voldemort هم به اون اشاره کرد. شما برای ان کار باید یک متغیر از نوع Boolean تعریف کنی. اولین باری که برنامه اجرا شد این متغیر برابر True بشه و در رجستری ذخیره بشه.
هر دفعه که برنامه اجرا میشه این متغیر رو کنترل کنه اگه False بود اون فرم نشون داده بشه و گرنه نشون داده نشه.
برای مثال هم توی VB :
Project<Add Form<Tip of Day میتونه مثال خوبی باشه.

Abbas Arizi
شنبه 04 مرداد 1382, 18:17 عصر
برای برنامه شما یه کار بهتر هم میشه کرد.
اون آدرس رو توی رجیستری یا هر جای دیگه ذخیره کنید بعد در شروع برنامه کنترل کنید که آدرس وجود داره یا نه؟ اگه نبود فرم مربوط به گرفتن ادرس رو نشون بده.

بمب منطقی
شنبه 04 مرداد 1382, 21:48 عصر
خب این همون Splash هست که Voldemort هم به اون اشاره کرد. شما برای ان کار باید یک متغیر از نوع Boolean تعریف کنی. اولین باری که برنامه اجرا شد این متغیر برابر True بشه و در رجستری ذخیره بشه.
هر دفعه که برنامه اجرا میشه این متغیر رو کنترل کنه اگه False بود اون فرم نشون داده بشه و گرنه نشون داده نشه.
برای مثال هم توی VB :
Project<Add Form<Tip of Day میتونه مثال خوبی باشه.

از کمکتون متشکرم ولی اگه میشه بگین چطوری متغییر رو تو رجیستری قرار بدم واگه میشه بگین به چه صورت مقدار اون برابر false میشه.البته میدونم سوالم , سوال مسخره ایه0:oops:

سعید قدیری مقدم
شنبه 04 مرداد 1382, 22:32 عصر
سلام راست شو بخواهید من هم طالبم بدونم چطور میشه اطلاعات داخل ریجستری رو دست کاری کرد اما روشی که من استفاده میکنم این است که مقدار متغییر رو بجای ریجستری داخل یک فایل از نوع random یا متنی یا binary داخل شاخه برنامه یا شاخه ویندوز ذخیره میکنم

برای اینکه متغییر رو false یا true کنی کافیه یک متغییر رو به صورت زیر تعریف کنی
dim i as Boolean
حالا متغییر i رو میتونی تنظیم کنی
i= true
یا
i=false

حالا من میخوام یک سوال بکنم :oops: کد های برنامه نویسی رو داخل این بخش شما چطوری از چپ به راست مینویسید :?:

بمب منطقی
شنبه 04 مرداد 1382, 22:57 عصر
... حالا من میخوام یک سوال بکنم :oops: کد های برنامه نویسی رو داخل این بخش شما چطوری از چپ به راست مینویسید :?:

والا من هم موفق به این کار نشدم اما تا اونجا که فهمیدم باید در صفحه ویرایش سوال از دکمه (Itr) استفاده کرد. اگه فهمیدی چطور کار میکنه به من هم به گو. :wink: :wink:

Abbas Arizi
یک شنبه 05 مرداد 1382, 00:19 صبح
بینید دوست عزیز. شما اون آدرسی رو که برنامه تون اول میگیره بالاخره باید Save کنید. حالا توی رجیستری یا یک فایل. درسته؟
بنابراین میتونید وقتی برنامه تون لود میشه اون آدرس رو کنترل کنید. اگر مقدار برگشتی برابر Null بود، به معنی اینه که قبلا آدرس وارد نشده و این اولین باره که برنامه اجرا میشه. پس لازمه که اون فرم نمایش داده بشه. ولی اگر آدرس وجود داشت، پس لازم نیست که فرم گرفتن آدرس نشون داده بشه.
اینارو گفتم که اون True و False رو بی خیال بشی. به هر حال اگر بخواهی از اون روش هم استفاده کنی نیازی به False کردن متغیر نداری. چون تا وقتی که به اون مقداری داده نشه مقدار اون خودبخود False هست. یعنی اولین باری که برنامه اجرا بشه اون False هست.
برای ذخیره کردن متغیر در رجیستری هم راه ساده اش استفاده از توابع SaveSetting برای ذخیره و GetSetting برای دسترسی به متغیر است. به اون مثالی هم که گفتم یه نگاهی بندازی بدک نیست.
در مورد نوشتن کد در اینجا هم بالای ادیتور دکمه کد را بزنید تا Tag مربوط به کد فعال شود.

بمب منطقی
یک شنبه 05 مرداد 1382, 00:58 صبح
قربون دستت عباس آقا , فکر کنم دیگه اشکالی تو این مورد نداشته باشم . راستی اون مثالو هم حتمآ امتحان میکنم.
:oops: :P :P

مرتضی منافپور
سه شنبه 18 شهریور 1382, 12:53 عصر
به راحتی می توانید از منوی Project گزینه AddForm را انتخاب کرده و سپس Tip of the day را
انتخاب کنید که یک فرم با کدنویسی در اختیار شما قرار می گیرد که می توانید در قسمت
Form_Load بقیه اعمال کدنویسی را انجام دهید.

vahidm
سه شنبه 24 آبان 1384, 18:54 عصر
من جواب این سوال را به خوبی می دونم وچند بار هم این کار را کردم
باید شما یک text بگذارید که این text از پایگاه داده باشه
در هنگام load فرم برای اولین بار یک عدد مثلا 1 در این تکس بگذارد برای بار دوم باید یک شرط بگذاری که اگر یک هست دو بگذارد
اگر می خواهید متوجه شوید یک ایمیل به این آدر س بزنید تا من شما را راهنمایی کنم onlyvahid_m2006@yahoo.com مطمئن باشید من این کار رو کردم

حامد مصافی
چهارشنبه 25 آبان 1384, 00:54 صبح
من قبلاً کلاس های کار با رجیستری و فایل های ini رو تو این بخش آپلود کردم
بگردی پیداش می کنی
اگه پیداش نکردی بگو تا برات ارسال کنم یا همین جا بذارمش

Mehdi0016
پنج شنبه 26 آبان 1384, 01:10 صبح
سلام
آقا مگه با savesetting و getsetting نمیشه ؟
ممنون