Мистика или закон?

  • Автор темы Dr3d
  • Дата начала
Статус
Закрыто для дальнейших ответов.
D

Dr3d

Гость
#1
Есть две формы: Form1 и Form2.
На второй форме есть Label. (Label.Caption := 'бла-бла-бла':) <-- Это важно!
После запуска приложения обе формы скрываются:

// ShowWindow(Form1.Handle, SW_HIDE);
// ShowWindow(Form2.Handle, SW_HIDE);
// ShowWindow(Application.Handle, SW_HIDE);

затем показываем вторую форму, делаем задержку в 5 сек и скрываем её:

// ShowWindow(Form2.Handle, SW_SHOW);
// Sleep(5000);
// ShowWindow(Form2.Handle, SW_HIDE);

выводится форма с надписью ''бла-бла-бла', всё как надо, НО
Но проделывая тоже самое второй раз - НИКАКОЙ НАДПИСИ НЕТ!!! Форма выводится, но она пустая!

Т.е. написав вот так:

// ShowWindow(Form2.Handle, SW_SHOW);
// Sleep(5000);
// ShowWindow(Form2.Handle, SW_HIDE);
// Sleep(5000);
// ShowWindow(Form2.Handle, SW_SHOW);
// Sleep(5000);
// ShowWindow(Form2.Handle, SW_HIDE);

Первый раз вылезет форма с надписью 'бла-бла-бла', а второй раз без надписи!

Вопрос: почему это происходит? И как сделать так, чтобы и второй раз была видна надпись?
 

Вложения

B

Barmutik

Гость
#2
Может стоит просто перерисовать форму после показа?

И по ходу вопрос .. зачем делать это АПИшными командами а не средствами Дельфей? Там на Form.Show уже стоит перерисовка формы...
 
D

Dr3d

Гость
#3
Делал по всякому, в том числе и Form2.Show(Hide), ничего не помагает.
Видимо тут все дело в таймере.
 
B

Barmutik

Гость
#4
Я честно скачал файл .. но плпытаться понимать в Вашем коде мне было трудно.. поэтому ничего конкретного сказать не могу ...
 

Гость
#5
Я честно скачал файл .. но плпытаться понимать в Вашем коде мне было трудно.. поэтому ничего конкретного сказать не могу ...
Поддерживаю Бармутика! Мало чего понятно. При компиляции вообще форма на весь и кран и... кранты. (Мнение не профисионала, в серьез не принимать) Ппопробуй динамически создавать эту метку. Просто при опредиленных параметрах у нее меняй текст. Т.е. при каждом новом запуске будет создаваться новая, а при выходе удаляться. :D
 
Статус
Закрыто для дальнейших ответов.