求助:在我自已写的类中,如何使用主窗口中的状态栏里的进度条控件。多谢!
1.我在MainForm中用如下方法打开MDI窗口,并且我的MainFormr的statusStrip1中有一个toolStripProgressBar1
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
MdiForm myMdiChild = new MdiForm();
MdiChild.Show();
}
2.在MdiForm中的Load中打开文件
private void Form2_Load(object sender, EventArgs e)
{
ReadF.RDfile( "c:\\text.dat ");
}
3.以下是读文件的类
namespace myPRJ
{
public class ReadF
{
public static RDfile(string sFileName)
{
FileStream fstream = new FileStream(sFileName, FileMode.Open, FileAccess.Read, FileShare.None);
byte[] bBuffer = new byte[5800];
for(int i=0;i <10000;i++)
{
fstream.Read(bBuffer, 0, 5800);
....处理数据
》》》》》》》》我想在这个地方使用MainForm中的toolStripProgressBar1
}
fstream.Close();
}
}
}
------解决方案--------------------调用
ReadF.RDfile( "c:\\text.dat ",toolStripProgressBar1);
------解决方案--------------------建议,使用委托,将进度条显示函数作为委托方法传入
------解决方案--------------------传一个委托和传一个变量——在本事例中作用应该差别不大。
都只是改变进度条进度而已。
------解决方案--------------------使用委托啊
------解决方案--------------------toolStripProgressBar1是引用类型,代码上反而能明了不少,个人感觉比传递委托,回头再写一个函数体,里面只放上一个改变进度的代码,要好很多。
------解决方案--------------------http://community.csdn.net/Expert/topic/5492/5492414.xml?temp=.2105219
------解决方案--------------------public static RDfile(string sFileName,toolStripProgressBar MyToolbar)
....
ReadF.RDfile( "c:\\text.dat ",toolStripProgressBar1);
------解决方案--------------------呵呵, 有位兄弟很认真的说
------解决方案--------------------使用委托可以解决
------解决方案--------------------