При загрузке параметров программы используются стандартные диалоговые окна для выбора файла.
private void button5_Click(object sender, EventArgs e)
{
//подготовка диалогового окна
openFileDialog1.FileName = "";
//вызов диалогового окна и определение результатов
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
//отановка займера
timer1.Enabled = false;
try
{
//стирание всех шаров
foreach (Shar sat in listBox1.Items)
sat.Hide();
//очистка списка шаров
listBox1.Items.Clear();
//очистка строки состояния
nameball_TS.Text = "";
speedball_TS.Text = "";
vball_TS.Text = "";
//определение расширения файла
if (new FileInfo(openFileDialog1.FileName).Extension == ".dat")
{
//создание бинарного потока данных
using (BinaryReader br = new BinaryReader(File.Open(openFileDialog1.FileName, FileMode.Open)))
{
//загрузка области рисования
Space.Load(br);
//чтение количества шаров
int c = br.ReadInt32();
//загрузка шаров
for (int i = 0; i < c; i++)
{
Shar sat = new Shar(Space);
sat.Load(br);
listBox1.Items.Add(sat);
}
}
}
else
{
//создание текстового потока данных
using (StreamReader sr = new StreamReader(File.Open(openFileDialog1.FileName, FileMode.Open)))
{
{
Space.Load(sr);
int c = Convert.ToInt32(sr.ReadLine());
for (int i = 0; i < c; i++)
{
Shar sat = new Shar(Space);
sat.Load(sr);
listBox1.Items.Add(sat);
}
}
}
}
}
finally
{
//запуск таймера
timer1.Enabled = true;
//установка доступности действий
Change_ED(false);
Del_ED(false);
Save_ED(true);
}
}
}