Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.27;
Скачать: CL | DM;

Вниз

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

 
R   (2003-11-18 04:26) [0]

Мастера как можно на OnShow скрыть форму,
вариант убрать за пределы видимости экрана не подходит,
заранее спасибо.


 
Babay ©   (2003-11-18 05:39) [1]

Я так понимаю это должно происходить при запуске проги

тогда так в файле проекта
Application.Initialize;
Application.CreateForm(TMyForm, MyForm);
Application.ShowMainForm:=false ;
Application.Run;


 
SkyRanger ©   (2003-11-18 06:06) [2]

Ну напиши обработчик OnShow и в нем сразу Hide
Должно сработать


 
R   (2003-11-18 06:38) [3]

To Babay © (18.11.03 05:39) задача стоит на OnShow есть нюансы
To SkyRanger © (18.11.03 06:06) Hide даст исключение на OnShow


 
SkyRanger ©   (2003-11-18 08:37) [4]

Могу предложить изваратиться! Кинь на фору таймер и у него OnTimer пропиши Hide и поставь задержку минимальную. и таймер сразу сделай Enable. По-идее он должен сработать сразу после загрузки схайдить форму. А чтобы не загружать проц, можно после хайда добавить Enabled:=False;


 
Babay ©   (2003-11-18 12:52) [5]

Ну если именно на оншов, то сделай прозрачный регион на всю форму. Винда небудет ее рисовать. Хотя конечно изврат...


 
panov ©   (2003-11-18 13:49) [6]


const MSG_HIDE=WM_USER+1;

type
TForm1 = class(TForm)
// ...

private
public
procedure OnHideMsg(var Message:TMessage); message MSG_HIDE;
end;

procedure TForm1.OnHideMsg(var Message:TMessage);
begin
Hide;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
PostMessage(Form1.Handle,MSG_HIDE,0,0);
end;


 
Думкин ©   (2003-11-18 13:56) [7]

А зачем? onShow - не само же вызывается, вот и не вызывай - это проще, чем что-то еще потом мутить.
Или я что-то не понял?


 
Игорь Шевченко ©   (2003-11-18 14:07) [8]

Думкин © (18.11.03 13:56)

Само вызывается, если у формы стоит Visible := True


 
Думкин ©   (2003-11-18 14:17) [9]

Почему-то у меня формы сами собой не вызываются на видимость, окромя главной. Но ведь и ее можно заневидеть иначе.


 
han-bratan   (2003-11-18 14:22) [10]

Думаю с таймером на сегодняшний момент самое оптимально (хотя с точки зрения нормальности конченно), но иначе никак. Вариант с Hide на OnShow пошлет Вас возглавить колону далеко идущих. Самому интерессно придумал утотонормальный спопосб решения этой траблы или нет. Кстати такой трабл возникает не только при Скрытии формы на OnShow.


 
panov ©   (2003-11-18 14:49) [11]

>han-bratan (18.11.03 14:22) [10]

см. выше совершенно нормальный работающий пример.
Без всяких дополнтельных компонент.


 
han-bratan   (2003-11-18 14:50) [12]

Интерессный вариант, надо будет запомнить. Спасибо.


 
kostik   (2003-11-18 15:52) [13]

к чему так сложно? в обработчике OnPaint
ShowWindow(Form1,SW_HIDE);


 
Семен Сорокин ©   (2003-11-18 15:53) [14]

kostik (18.11.03 15:52) [13]
ты сам-то пробовал?



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

Текущий архив: 2003.11.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.017 c
1-89848
Buffoon
2003-11-16 17:49
2003.11.27
Заголовок окна


1-89839
TIER
2003-11-16 22:54
2003.11.27
<I>Как сделать чтобы работало несколько циклов одновременно?</I>


8-89999
antonyan
2003-08-01 11:42
2003.11.27
Вставка из буфера изображения формы


1-89986
Olga_Oo
2003-11-17 10:59
2003.11.27
Label


7-90155
Дмитрий
2003-09-17 14:27
2003.11.27
TVaComm в win2k и win98