IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Спрятать в трей, Спрятать в трей
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 47
Пол: Мужской
Реальное имя: Юрий

Репутация: -  0  +


Здравствуйте всем,перейду к сути вопроса.В C++Builder есть компанент который прячет прграмму в трей (с течение времени меняет её иконку и т.д. вобшем красота), мне хотелось бы узнать можно ли в Delphi 5 тоже сотворить что-то подобное.Заранее спасибо
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
Все равно все работает не так как мне бы хотелось.
Ну, ты же придумываешь новые правила в ходе игры, что ж ты хочешь? dry.gif

Цитата
1. В каждой форме приходиться встовлять этот код и каждая оддельная форма сворачиваеься в оодельную иконку в треии.
А ты что хотел? Чтобы по клику в трее сразу всплывали ВСЕ формы, туда минимизированные? Или только четвертая? А почему не вторая? То, что КАЖДАЯ форма имеет иконку в трее - самый логичный вариант...

Чтоб не писать этот код для КАЖДОЙ формы, можешь создать класс TTrayedForm, например, унаследовав его от TForm, в нем реализовать все эти методы, а свои формы создавать уже:
Type
TForm1 = Class(TTrayedForm)
...
End;



Цитата
2. Не получаеться чтобы программа при запуске сразу была свернута в трей(тоесть для того чтобы она свернулась приходиться нажимать кнопку свертывания формы)
А пробовал?

Я вот попробовал, и, знаешь, получилось...

{ Эту процедуру не забудь добавить в класс формы }
procedure TForm1.OnMinimizeProc(Sender: TObject);
begin
PostMessage(Handle,WM_SYSCOMMAND,SC_MINIMIZE,0);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.onMinimize:=OnMinimizeProc;
Application.Minimize; { <--- Вот этого не хватало }
end;


Цитата
3. В панели около "пуск" программа не исчезает (она сворачиваеться в трей и продолжает висеть в в панели около кнопки пуск)
Да ты что???

procedure TForm1.ControlWindow(var Msg: TMessage);
begin
if Msg.WParam = SC_MINIMIZE then begin
Ic(1, Application.Icon);
ShowWindow(Handle, SW_HIDE);
ShowWindow(Application.Handle, SW_HIDE); { <--- Добавлять не пробовал? }
end
else inherited;
end;


Цитата
4. А есть какойнибуть более лекгий код свертывания в трей или нету.
Если делать все ручками - нету, а по бездумному бросанию компонентов на форму, извини, я не специалист...

Итог: Чтобы программы работали, как ТЫ хочешь - надо ТЕБЕ самому их и писать, не так ли?
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 7.05.2024 14:43
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name