Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как развернуть чужое окно из трея?


chernoruk ©   (2004-01-14 11:57:00) 

Здравствуйте!
вот никак не могу решать такую задачу:
хочется развернуть произвольноле чужое окно из трея.
пробовал ShowWindow(...) с разынми параметрами, всякие SetWindowPos, DeferWindowPos и пр. - но максимум, чего получал - развернутое окно без кнопки на таскбаре. а вот хочется, чтоб и кнопка от окна появлялась.
Есть какие-нибудь сопосбы?


Sha   (2004-01-16 13:29:00) [1]

> chernoruk   (14.01.04 13:46) [8]
> все функции для окон перепробовал....

Попробуй эти :)
FindWindow
GetLastActivePopup
IsIconic
ShowWindow
BringWindowToTop
SetForegroundWindow


GrayFace   (2004-01-14 20:45:00) [2]

ShowWindow


DVM   (2004-01-14 15:36:00) [3]


> в msdn ненашёл ничего подходящего :(

Смотри темы по панель задач. Там написано какие флаги должно иметь окно, чтобы его отображала панель задач.


chernoruk   (2004-01-14 14:43:00) [4]

так умеет кто-нибудь такое делать?
задача-то, в общем, тривиальная
видно,надо по хитрому флаги какие-то рассавить...
бог знает
в msdn ненашёл ничего подходящего :(


chernoruk   (2004-01-14 13:46:00) [5]

да кнопка то есть у окна
и окно обычное, сишное
the bat! например
вот у меня есть другая прога, без исходниклв, которая разворачивает его
а у меня не получается
все функции для окон перепробовал....


Kerk   (2004-01-14 13:38:00) [6]

на чем написано разницы действительно нет.

но обрабатывать надо самое главное родительское окно - именно от него зависит появление кнопки на таксбаре.

у Delphi - это окно TApplication, а ты наверно разминимизируешь какое-то его дочернее окно, а потом пытаешься используя его же хэндл показать кнопку на таскбаре.
(это тебе в твоей проге в любом случае придется учесть)


DVM   (2004-01-14 13:36:00) [7]


> но максимум, чего получал - развернутое окно без кнопки
> на таскбаре. а вот хочется, чтоб и кнопка от окна появлялась.

А может в некоторых случаях кнопки там и не должно было быть. А ты ее покажешь?
В любом случае стили окна менять надо, как уже сказали с помощью SetWindowLong()


chernoruk   (2004-01-14 13:32:00) [8]

да какая разница, на чём ононапсано?
вконце концов, всё сводиться к использованию функций win api
и тот же метод из delphi тоже их юзает
так что тут с win32 надо разобраться


Kerk   (2004-01-14 13:07:00) [9]

Если прога, в котором чужое окно на Delphi написана, то тебе надо мучать не TForm.Handle, а TApplication.Handle
(криво я конечно выразился :])
т.к. на таскбаре показывается кнопка того окна, которое в TApplication сидит


chernoruk   (2004-01-14 13:00:00) [10]

так а ккой параметр стави ь?
я все пробовалъмаксимму, посвторяю, оно делалось видымым, но не появлялоськнопки на панели задача


Kerk   (2004-01-14 12:50:00) [11]

SetWindowLong ?


chernoruk   (2004-01-14 12:10:00) [12]

неужели ни у кого нет никаких идей?


Наверх

Титульная страница Поиск, карта сайта Написать письмо