Метод Show формы и события с ним связанные - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Всем здравствуйте. Есть две формы Main и Second. Main всегда в памяти и выгружается при закрытии всего приложения. Second вызывается из Main методом Show и уже из памяти не выгружается до закрытия всего приложения. Закрываем Second методом Hide (из памяти она не выгружается, а только скрывается) показывая Main форму. Какие события следует использовать, если я хочу, например, чтобы некий таймер (принадлежащий Second) работал только когда Second отображена на экране форма Main:
Листинг программы
  1. Public Class Main
  2. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  3. Me.Hide()
  4. Second.Show()
  5. End Sub
  6. End Class
форма Second:
Листинг программы
  1. Public Class Second
  2. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  3. Me.Hide()
  4. Main.Show()
  5. End Sub
  6. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
  7. 'проверка того тикает ли таймер формы Second или не тикает
  8. Me.Label1.Text = Date.Now.Second
  9. Main.Label1.Text = Date.Now.Second
  10. End Sub
  11. Private Sub Second_Activated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Activated
  12. Me.Timer1.Start()
  13. End Sub
  14. Private Sub Second_Deactivate(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Deactivate
  15. Me.Timer1.Stop()
  16. End Sub
  17. End Class
При использовании Activated/Deactivate если переключаюсь на другие приложения возникает ситуация: ни одной из форм на экране нет, ни одного окошка на панели задач нет, а приложение работает (закрываю только по SHIFT+F5)! Событие Shown тоже не подходит (вызывается только при первом вызове метода Show). Какие же события формы жёстко связано с методами Show и Hide?

Решение задачи: «Метод Show формы и события с ним связанные»

textual
Листинг программы
  1. Dim lst As New List(Of String)
  2.     Private Sub Form1_AutoSizeChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.AutoSizeChanged
  3.         lst.Add("AutoSizeChanged")
  4.     End Sub
  5.  
  6.     Private Sub Form1_Activated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Activated
  7.         lst.Add("Activated")
  8.     End Sub
  9. ' ' '
  10. ' И так далее, все события
  11. ' ' '
  12.  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  13.         ListBox1.Items.AddRange(lst.ToArray)
  14.     End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.429 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы