![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Если кто решал данную проблему:
После вызова в OnCreate Application.Minimize приклад ведет себя странно. - после клика на таскбаре по нему он окно-то разворачивает, а вот само приложение все-равно считает себя свернутым. Соответсвенно, при попытке минимизировать окно ничего не происходит. Если кликнуть по таскбару правой мышой и выбрать пункт Restore, то все приходит в норму. Если кто вдруг сталкивался с этой проблемой и знает как ее решать - отзовитесь. Сейчас самому некогда с ней разбираться, но она явно раздражает... |
#2
|
|||
|
|||
![]() А я вот попробовала написать Application.Minimize в методе OnCreate, но окно-то при запуске программы не сворачивается (но уходит вниз Z-порядка). Хотя и не должно сворачиваться, вроде бы. И в справке так и сказано: "не путайте метод Minimize всего приложения с минимизацией окна".
Потерю активности кнопки сворачивания можно "вылечить", обрабатывая в своей программе сообщение WM_SYSCOMMAND. Вот так, например: Код:
TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private declarations } procedure WMSYSCOMMAND(var Msg: TMessage); message WM_SYSCOMMAND; public { Public declarations } end; ............ procedure TForm1.FormCreate(Sender: TObject); begin Application.Minimize; end; procedure TForm1.WMSYSCOMMAND(var Msg: TMessage); begin if Msg.WParam = SC_MINIMIZE then ShowWindow(Handle, SW_MINIMIZE); inherited; end; |
#3
|
|||
|
|||
![]() Угу, попробую.
Дело в том, что именно происходит сворачивание приложения, но после клика на кнопке приложения на таскбаре, хотя окно и разворачивается, но приклад считает, что он все еще свернут. Вот тут-то и трабл. |
#4
|
|||
|
|||
![]() Сейчас только заметила, что если делать так, как написала выше, окно сворачивается не в иконку на панели задач, а как будто дочернее — в угол над кнопкой Пуск... =)
|
#5
|
|||
|
|||
![]() Попробовал. Не совсем то что нужно.
Точнее так - точно не нужно. Ладно, по ходу буду рыть сам, когда основной функционал доделаю. |
#6
|
||||
|
||||
![]() Плохо понял что вы хотите, но на таск-баре отображается окно
application.handle; Вызывайие ShowWindow(application.handle, SW_ХХХХ) так геде что то не так работает. ...сказал, и загрустил от бесспорной своей правоты |
#7
|
|||
|
|||
![]() Пробовал. Не помогает.
Короче, хочу, что бы при старте приложения оно умело стартовать в свернутом режиме. При этом - это настройка. Вариант обычного старта и старта в трее работает нормально. А вот этот - нифига. Просто мне еще надо кучу другого функционала написать, поэтому решил спросить - -может кто уже бился с этим. |
#8
|
||||
|
||||
![]() а WindowState := wsMinimized не пробовали? (в инспекторе объектов)
...сказал, и загрустил от бесспорной своей правоты Последний раз редактировалось 0nni, 28.04.2009 в 22:57. |
#9
|
||||
|
||||
![]() вот еще вариант.
Код:
Application.Initialize; Application.Minimize; Application.MainFormOnTaskbar := True; Application.CreateForm(TForm1, Form1); Application.Run; Можно cmdShow при старте менять ...сказал, и загрустил от бесспорной своей правоты |