PDA

View Full Version : ترتیب اجرای objectها



jannati
شنبه 28 تیر 1382, 10:19 صبح
با سلام و تشکر از توجهتون
من در یک قسمت از برنامه ام در رویداد clickـ list boxبرنامه نوشته ام .ولی نمیدونم چرا وقتی فرم loadمیشه اول اون قسمت اجرا میشه.قبل از اینکه form_loadاجرا بشه؟ :cry: :cry: :roll:
به نظر شما چیکار کنم؟

Abbas Arizi
شنبه 28 تیر 1382, 10:22 صبح
شما باید کدی که توی Form_Load نوشته اید رو یکبار چک کنید. احتمالا اونجا کدی نوشتید که باعث فراخوانده شده ListBox_Click میشه. :wink:

morteza_dehghan
شنبه 28 تیر 1382, 11:11 صبح
سلام
حق با جناب عریزی است البته نا گفته نماند که شاید شما این رویداد را در یک فانکشن صدا می زنید که این فانکشن در رویداد فرم لود صدا زده شده است یا در رویداد initialize فرم که قبل از فرم لود و فقط یک بار در زمان لود فرم اجرا میشود شما این کار را انجام میدهید :wink:

jannati
شنبه 28 تیر 1382, 12:30 عصر
دوستان عزیز
در هیچ کجا این رویدادlist_clickرا صدا نزده ام و یا از یک function که در این رویداد تعریف کرده باشم استفاده نکرده ام.وقتی برنامه را traceمیکنم برای شروع اجرا به جای form_loadاولین خط این روال اجرا میشود.

morteza_dehghan
شنبه 28 تیر 1382, 19:10 عصر
سلام
دوست عزیز این طبیعی است :lol: ببینید من الان دقیقا متوجه شدم مشکل شما چیست !!!!!!!!!
اگر اشتباه نکرده باشم این لیست باکس شما به بانک متصل است و زمان اجرا برنامه پر می شود :wink: خوب در چنین حالتی با توجه به اینکه در زمانی که فرمی لود می شود ابتدا اطلاعات آن فراخوانی شده و کانکشن های ایجاد شده باز می گردد خوب در نتیجه قبل از لود شدن فرم لیست شما پر می گردد و عملا با چنین اتفاقی رویداد کلیک لیست شما فرا خوانی می شود :wink:
حال راه حل به احتمال قوی شما برنامه ای که داخل رویداد کلیک نوشتید باعث می شود اگر کاربر ردیفی را انتخاب کرد مقدار ان ردیف در جای خاصی بنشیند اگر این چنین است خوب اصلا کل کار شما اشکال دارد چون کاربر با حرکت کردن برروی لیست با کلید های جهت نما دائما این روایداد را فراخوانی می کند پس شما باید این برنامه را در دو قسمت « کی پرس » و « موس آپ » لیست بیاورید
ضمنا این اتفاقات در رابطه با چک باکس هم صدق می کنه
امید وارم که مفید واقع شده باشم :)