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