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

Вниз

Как определить в проекте, какая из форм будет активной?   Найти похожие ветки 

 
Beeper   (2002-02-28 21:50) [0]

Вопрос начинающего :)
Как определить в проекте, какая из форм будет активной?
А то у меня то одна, то другая активна при запуске, я не знаю от чего это зависит. Вроде нельзя при инициализации управлять фокусом - я и Win Api (setactivewindow вроде)пробовал - чё то не получается...
Большое спасибо если кто поможет!
P.S.
Где почитать в инете про Canvas - ни фига не врубаюсь чё это, уже всю свою книгу перелопатил.


 
Song ©   (2002-02-28 21:56) [1]

MainForm....

на самом деле активна всегда только одна форма, при её закрытии приложение закроется, а вот другие могут быть видимыми, не видимыми, модальными, не модальными.
Главная форма (в Вашей интерпретации активная) задаётся в опциях приложения (Project --> Options). По умолчанию Дельфи считает главной форму, которая первой создаётся автоматически (CreateForm)


 
Beeper ©   (2002-02-28 22:05) [2]

Не, мне надо знать как сделать ту или другую форму активной при запуске приложения, не меняя какая форма главная


 
nick_vstu ©   (2002-03-01 00:26) [3]

Главная форма будет запускаться первой во всех случаях. Вам надо просто прятать ее, а показывать ту которую нужно. Вопрос как спрятать главную форму при старте приложения уже неоднократно обсуждалься, IMHO лучший способ в OnCreate главной формы делать ShowWindow(MainForm.handle,WS_Hide) (не уверен в правильности написания параметров, что-то типа этого). Дальше надо показать нужное окно. В событии OnCreate главной формы это делать не стоит - так как остальные окна еще не создались. IMHO это надо делать в OnCreate окна которое создается последним.


 
Aleks1   (2002-03-01 02:54) [4]

Имхо, не всегда и не так.
Например, при запуске приложения, всегда можно сначала показать другую, т.е. не MainForm! Или вставкой в DPR, или вызовом в MainForm.OnShow!


 
Sasha9 ©   (2002-03-01 11:34) [5]

меню Project>View Source далее перед Application.Run; вставь FormX.SetFocus;


 
Beeper ©   (2002-03-02 00:02) [6]

Большое спасибо за ответы - не поверите, сам разобрался : Sasha9 дал такой же вариант, как и я сам случайно реализовал. Еще раз спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
6-57483
Surf
2002-01-04 09:12
2002.03.18
Помогите! Не могу найти. Вопрос по NMHTTP.


3-57294
skiph
2002-02-14 09:14
2002.03.18
Загрузка в TOLEContainer


1-57421
Di_wind
2002-03-03 00:21
2002.03.18
Проверить существует-ли директория.


1-57457
Man-In-Red
2002-03-03 03:04
2002.03.18
Как в своей программе использовать свои курсоры? Посмотрите, пожалуйста, что тут не так?


1-57343
VS
2002-03-01 07:01
2002.03.18
Как закрыть активное приложение зная его exe-файл