на форме1 нажимаю кнопку, она запускает таймер, после истечения времени запускается форма2 и поистечению времени уже там форма2 закрывается и на форме1 время должно восстановится, ну чтобы отображало в label, все более менее работает но не знаю куда пихнуть label для повторного отображения
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
LoadSettings();
}
Properties.Settings setts = new Properties.Settings();
public Form2 f2 = new Form2();
public static int minInterval;
public static int minRelax;
public static int sec;
void LoadSettings()
{
Properties.Settings setts = new Properties.Settings();
f3.comboBox1.SelectedIndex = setts.TimeInterval;
f3.comboBox2.SelectedIndex = setts.TimeRelax;
}
void SaveSettings()
{
Properties.Settings setts = new Properties.Settings();
setts.TimeInterval = f3.comboBox1.SelectedIndex;
setts.TimeRelax = f3.comboBox2.SelectedIndex;
setts.Save();
}
public void timer1_Tick(object sender, EventArgs e)
{
sec = sec - 1;
if (sec == -1)
{
minInterval = minInterval - 1;
sec = 59;
}
if (minInterval == 0 && sec == 0)
{
timer1.Enabled = false;
Console.Beep(659, 100);
Form1_Load(sender, e);
f2.Show(); //вот мы открываем форму2
}
label2.Text = minInterval.ToString() + ":" + sec.ToString();
}
public void Form1_Load(object sender, EventArgs e)
{
LoadSettings();
if (f3.comboBox1.SelectedIndex == 0)
{
Form1.minInterval = 5;
}
if (f3.comboBox2.SelectedIndex == 0)
{
Form1.minRelax = 1;
}
}
private void buttonStart_Click(object sender, EventArgs e)
{
if (timer1.Enabled)
{
timer1.Enabled = false;
buttonStart.Text = "Старт";
buttonRestart.Enabled = true;
}
else
{
timer1.Enabled = true;
buttonStart.Text = "Стоп";
buttonRestart.Enabled = false;
}
}
private void buttonRestart_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
Form1_Load(sender, e);
label2.Text = minInterval.ToString() + ":" + sec.ToString();
}
**ФОРМА2**
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
int sec;
private void button1_Click(object sender, EventArgs e)
{
Console.Beep(659, 100);
timer1.Enabled = false;
//Form1 f1 = new Form1(); //это не работает (не понимаю)
//f1.timer1.Enabled = true; //это не работает (не понимаю)
this.Close();
//и вот тут после закрытия формы2 должен перейти к таймеру формы1, чтобы он опять работал.
form1.timer1_Tick(sender, e); //это типа хочу перейти так }
}
В Form2 уберите создание новых экземпляров Form1.
public void timer1_Tick(object sender, EventArgs e)
{
sec = sec - 1;
if (sec == -1)
{
minInterval = minInterval - 1;
sec = 59;
}
if (minInterval == 0 && sec == 0)
{
timer1.Enabled = false;
Console.Beep(659, 100);
Form1_Load(sender, e);
f2.ShowDialog();
LoadSettings();
SetTimeIfZero();
timer1.Enabled=f2.timerSet;
f2.Dispose();
}
label2.Text = minInterval.ToString() + ":" + sec.ToString();
}
public void Form1_Load(object sender, EventArgs e)
{
LoadSettings();
SetTimeIfZero();
}
private void SetTimeIfZero()
{
if (f3.comboBox1.SelectedIndex == 0)
Form1.minInterval = 5;
if (f3.comboBox2.SelectedIndex == 0)
Form1.minRelax = 1;
}
В Form 2 добавьте переменную public bool timerSet=false; и в button1_Click (Form2) добавьте timerSet=true;
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Добрый деньПодскажите пожалуйста как переназначить кнопку закрытия программы(крестик в углу)? Хочу повесить на нее другое действие
Нужно, чтобы первый элемент в массиве менялся на 1 каждый раз, когда выполняется функция saveПри этом, если запросить первый элемент массива...
Необходимо найти в массиве элементы (тоже массивы) с повторяющимся элементом 0 и отсеять их из общего массива
Есть ли сокращенные до одного файла библиотеки шифрования keccak256? Просто что не смотрю все библиотеки в несколько файлов, и с набором 512, 384 и тп