PDA

View Full Version : سوال: رفع مشکل قفل شدن فرم تا زمان اجرای باتن



hercool
دوشنبه 06 آبان 1392, 10:42 صبح
سلام دوستان
یه سوال دارم
مشکلی که من با فرم هام دارم اینه که هر کدومشون رو که میزنم برای اجرا دیگه نمی تونم به بقیه باتن های فرمم دسترسی داشته باشم یه جوری قفل هست تا کار اون باتن اجرا بشه می خوام این مشکل نباشه و من بتونم مثلا با زدن یک چک باکس بتونم به برنامم بفهمونم که باید یک کاری رو کنه اما اصلا نمی تونم روی فرمم کلیک کنم
یه جوری برنامه قفل هست
راه حل این مشکل چی هست

alireza1384
دوشنبه 06 آبان 1392, 11:19 صبح
در این صورت باید از چند thread جداگانه استفاده کنی.

alireza.tabesh
دوشنبه 06 آبان 1392, 15:17 عصر
منم این مشکلو داشتم با راهنمایی دوستان خوب این سایت حل شد .
http://barnamenevis.org/showthread.php?422705-%D8%AA%D9%88%D9%82%D9%81-%D8%B8%D8%A7%D9%87%D8%B1-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%87%D9%86%DA%AF%D8%A7%D9%85-%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA

hercool
سه شنبه 07 آبان 1392, 15:43 عصر
سلام
ممنون بابت لینک علیرضای عزیز
من خوندم و این کد رو برای امتحان زدم اما مشکل این هست که باید یکی یکی حلقه رو بره و ادرس رو داخل وب براوزر لود کنه و اگر چک باکس باشه برنامه خارج بشه از حلقه اما در یک چشم به هم زدن حلقه میره بدون اینکه یکی یکی سایت رو لود کنه


public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void start()
{

for (int i = 0; i < 1000; i++)
{
label1.Text = "";
loadurl();
label1.Text="ادرس لود شد";
label2.Text = i.ToString();
if (checkBox1.Checked == true) { break; }
}

}

private void loadurl()
{
webBrowser1.Navigate("http://www.google.com/");
}

private void button1_Click(object sender, EventArgs e)
{
bgw1.RunWorkerAsync();

bgw1.DoWork += bgw1_DoWork;

}

void bgw1_DoWork(object sender, DoWorkEventArgs e)
{
start();
}
}

veniz2008
سه شنبه 07 آبان 1392, 16:03 عصر
سلام.
آقای gwbasic (http://barnamenevis.org/member.php?25140-gwbasic) یک مقاله کوتاه در ارتباط با همین بحث backgroundworker دارند که توی امضاشون هست.
اونو مطالعه کنید، فکر کنم مشکلتون رو حل میکنه.
موفق باشید.