![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создать второе окно с иконкой на панели задач [D2005]
Виктор007 © (2008-01-29 16:56:00)Здравствуйте Мастера!
У меня такой вопрос - приложение состоит из двух форм. Главная форма вызывает форму:
fMain := nil;
Application.CreateForm(TfMain, fMain);
fLogin.Hide;
fMain.Show;
Но при сворачивании такой формы она сворачивается в маленькую полоску около меню пуск. А значек на панели задач - отображается от скрытой формы...
А мне нужно чтобы значек от скрытой формы исчез, а появилась там форма fMain. Все что знал перепробовал - ничего не получается.
Anatoly Podgoretsky (2008-01-29 21:06:00) [1]> clickmaker (29.01.2008 18:42:16) [16]
И SystemModal :-)
Виктор007 (2008-01-29 20:29:00) [2]Спасибо большое, столько вариантов и советов. Буду пробовать!
clickmaker (2008-01-29 18:42:00) [3]
> Если логин не пройдет после Н попыток, то в меню разрешать
> только
Exit Windows/Restart/Power off
Anatoly Podgoretsky (2008-01-29 18:39:00) [4]> clickmaker (29.01.2008 17:46:06) [6]
Зачем в проект, в главную форму и там пункты меню - Login/Logout и просто и надежно.
Если логин не пройдет после Н попыток, то в меню разрешать только Login/Exit/About
clickmaker (2008-01-29 18:39:00) [5]
> [13] webpauk © (29.01.08 18:37)
а в чем магический смысл последней строчки? )
webpauk (2008-01-29 18:37:00) [6]может біть:
private
procedure CreateParams(var Params :TCreateParams); override;
procedure TForm.CreateParams(var Params :TCreateParams);
begin
inherited CreateParams(Params);
Params.ExStyle:=Params.ExStyle or WS_Ex_AppWindow;
Params.WindowClass.style:=Params.WindowClass.style;
end;
ANB (2008-01-29 18:11:00) [7]
> лишние теледвижения (создание формы и хрен знает, сколько
> еще ресурсов), а логин может и не пройти
Дык это. Датамодуль все равно создавать с объектом для сессии. Иначе как я проверять логин то буду ? Та не так уж много главная форма обычно ест. В любом случае, если при отказе в логине закрыть приложение, то ресурсы почистятся.
А бывает, когда при отказе логинится нужно все равно главную форму показывать (см ТОАД и ПЛ/СКЛ девелопер). Так что больших выгод нету.
Впрочем, как удобнее, так и пишем.
clickmaker (2008-01-29 18:05:00) [8]
> А чем ОнШоу хуже ?
лишние теледвижения (создание формы и хрен знает, сколько еще ресурсов), а логин может и не пройти
easy (2008-01-29 18:00:00) [9]1. http://dfc.com.ru/?sid=2&id=7&itemid=129
2. http://dfc.com.ru/download.php?d=login(3кб)
ANB (2008-01-29 17:59:00) [10]
> clickmaker © (29.01.08 17:54) [8]
Хотя и не длиннее. Скорее привычка. Ну и лениво файл проекта трогать.
А чем ОнШоу хуже ?
clickmaker (2008-01-29 17:54:00) [11]
> [7] ANB © (29.01.08 17:48)
чем длиннее?
ANB (2008-01-29 17:48:00) [12]
> clickmaker © (29.01.08 17:46) [6]
Мона и в ДПР. Но длиннее.
clickmaker (2008-01-29 17:46:00) [13]
> В онШоу главной формы вызывай форму логина
зачем в ОнШоу?
в dpr
if SomeThing.SuccessLogin then
begin
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end;
ANB (2008-01-29 17:44:00) [14]
> Виктор007 (29.01.08 16:56)
Эта. Верни на место код в файле проекта.
Сделай главной и автосоздающейся формой главную.
В онШоу главной формы вызывай форму логина. И не парься.
clickmaker (2008-01-29 17:42:00) [15]а главная форма-то в настройках проекта хоть fMain?
Игорь Шевченко (2008-01-29 17:34:00) [16]Как создается форма fLogin ?
Виктор007 (2008-01-29 17:29:00) [17]1. Создал приложение с одной формой. Главную форму назвал fLogin
2. Создал форму, назвал fMain
3. Убрал новую форму из AutoCreated
4. На главную форму fLogin бросил кнопку, в обработчике кнопки написал:
fMain := nil;
Application.CreateForm(TfMain, fMain);
fLogin.Hide;
fMain.Show;
5. Все, запускаю приложение, показывается форма с кнопкой. Кликаю кнопку - с панели задач приложение исчезает, и исчезает форма fLogin. Показывается и остается только fMain. Но если её свернуть - она сворачивается в прямоугольничек чуть выше пуска а не на панель задач.
Вопрос: как сворачивать это окно на панель задач. И чтобы оно отображалось там.
Игорь Шевченко (2008-01-29 17:08:00) [18]Мало кода