behroz1387
چهارشنبه 16 بهمن 1387, 01:52 صبح
با سلام
دوستان عزيز من براي زمان لود شدن يك فرم توسط يك دكمه يك progressbar گذاشته ام اما موقعي كه اين دكمه را دو بار كليك مي كنيد برنامه قفل مي كنه لطف مي كنيد كه مشكلم را بگوئيد
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
private System.Windows.Forms.ProgressBar progressBar1;
public Form1()
{
InitializeComponent();
this.progressBar1 = new System.Windows.Forms.ProgressBar();
this.progressBar1.Location = new System.Drawing.Point(12, 12);
this.progressBar1.Name = "progressBar1";
this.progressBar1.Size = new System.Drawing.Size(268, 23);
this.progressBar1.TabIndex = 0;
this.Controls.Add(this.progressBar1);
}
private void button1_Load(object sender, EventArgs e)
{
Thread waitThread = new Thread(new ThreadStart(DoWork));
waitThread.Start();
}
private void DoWork()
{
for (int i = 0; i < 100; i++)
{
this.Invoke(new ThreadStart(SafeCall));
Thread.Sleep(25);
}
MessageBox.Show("OK");
}
private void SafeCall()
{
this.progressBar1.Value++;
}
}
}
دوستان عزيز من براي زمان لود شدن يك فرم توسط يك دكمه يك progressbar گذاشته ام اما موقعي كه اين دكمه را دو بار كليك مي كنيد برنامه قفل مي كنه لطف مي كنيد كه مشكلم را بگوئيد
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
private System.Windows.Forms.ProgressBar progressBar1;
public Form1()
{
InitializeComponent();
this.progressBar1 = new System.Windows.Forms.ProgressBar();
this.progressBar1.Location = new System.Drawing.Point(12, 12);
this.progressBar1.Name = "progressBar1";
this.progressBar1.Size = new System.Drawing.Size(268, 23);
this.progressBar1.TabIndex = 0;
this.Controls.Add(this.progressBar1);
}
private void button1_Load(object sender, EventArgs e)
{
Thread waitThread = new Thread(new ThreadStart(DoWork));
waitThread.Start();
}
private void DoWork()
{
for (int i = 0; i < 100; i++)
{
this.Invoke(new ThreadStart(SafeCall));
Thread.Sleep(25);
}
MessageBox.Show("OK");
}
private void SafeCall()
{
this.progressBar1.Value++;
}
}
}