Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Вниз

Закрытие формы   Найти похожие ветки 

 
Ivan_73   (2003-01-24 09:04) [0]

Мастера. Обрабатывается событие OnActivate. Как в этом обработчике, при определеннных условиях, сделать, чтобы форма не появилась. "Close" не работает, так как форма еще не появилась.


 
Reindeer Moss Eater   (2003-01-24 09:11) [1]

procedure DoHide(var Msg:TMessage); message wm_user+100;


procedure TForm2.DoHide(var Msg: TMessage);
begin
Close;
end;

procedure TForm2.FormActivate(Sender: TObject);
begin
PostMessage(Handle,wm_user+100,0,0);
end;


 
Anatoly Podgoretsky   (2003-01-24 09:16) [2]

Зачем же вызываешь если тебе не нужна форма, ты сначала проверь и только потом Show.
К тому же ты плохо представляешь работу OnActivate, твое утверждение насчет "форма еще не появилась." верно только частично.


 
Lord Warlock   (2003-01-24 09:17) [3]

А можно проще:

procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
end;


procedure TForm2.FormActivate(Sender: TObject);
begin
if Чего-то там then
PostMessage(Handle,WM_CLOSE,0,0);
end;


 
Reindeer Moss Eater   (2003-01-24 09:18) [4]

Правда все это можно назвать ответом на вопрос:
как сделать, что бы юзер не успел заметить появление формы


 
Anatoly Podgoretsky   (2003-01-24 09:32) [5]

If not Чего-то там then Show

и нет возможности у юзера.


 
Севостьянов Игорь   (2003-01-24 16:13) [6]

Было у меня приблизительно такая потребность, надо было от унаследнованной формы (большой проект), чтобы не показывалась форма наследника, но If not Чего-то там then ShowModal не подходит, т.к. переписывать вызов формы (условия при которых вызывалась) было нельзя... И поэтому просто в наследнике переписалась ShowModal, которая является virtual методом. Вот в этом ShowModal и происходит Show (вызов метода Show)и Activate формы ( с помощью SendMessage(Handle, CM_ACTIVATE, 0, 0);)


 
MacX   (2003-01-25 00:06) [7]

Мне кажется автор имел ввиду, как сделать чтобы главная форма не появлялась после Application.Run Т.е. проверяется условие и в зависимости от него программа запускается дальше или выгружается, но так, чтобы главная форма не появилась... хотя может я ошибаюсь



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.032 c
1-4826
MiXen
2003-01-23 02:18
2003.02.03
Местоположение в ScrollBox


3-4707
Picco
2003-01-15 15:08
2003.02.03
О производительности


7-5305
MenyaZovutLion
2002-11-20 03:56
2003.02.03
Хлопцi помогите запрограммировать LPT порт


1-4949
viper
2003-01-23 11:07
2003.02.03
Иконка


6-5116
Blacker77
2002-12-09 23:35
2003.02.03
Рейтинг файлов на сервере





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский