Вниз
Скачать: CL | DM;

Про TrayIcon   Найти похожие ветки 

← →
Юрий_К   (2007-11-22 15:18) [0]

Пример скачал с TrayIcon, но там реально ничего нет. Хотел сделать, что если нажимаем на "X" форме, то чтобы форма становилась невидимой. Обратно видимой должна будет становиться при клике на иконку в трее. Но почему то в FormCloseQuery не попадаем пр отработке кода.


procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
   CanClose := False;
   ShowWindow(Applet.Handle, SW_HIDE);
   //if Form.Active then Form.Hide;
end;

procedure TForm1.btnButton1Click(Sender: PObj);
begin
   ShowWindow(Applet.Handle, SW_HIDE);
end;


В btnButton1Click попадаем, а в FormCloseQuery нет. Что нужно сделать?

Что раньше в VCL проекте делалось: если TrayIcon1.Active то прячем окно при нажатии на "x" на форме.

 if not TrayIcon1.Active then begin
 ...
 end else begin
   CanClose := False;
   ShowWindow(Application.Handle, SW_HIDE);
   if Active then Hide;
 end;


← →
Юрий_К   (2007-11-22 15:44) [1]

Что нужно сделать, чтобы в панели задач внизу убрать "формочку" от приложения при сворачивании. Чтобы только иконка оставалась в трее? Может ли кто подсказать?

Пока такой код есть:
procedure TForm1.btnButton1Click(Sender: PObj);
begin
   if Form.Visible then Form.Hide;
end;

procedure TForm1.TrayIcon1Mouse(Sender: PObj; Message: Word);
begin
 if not Form.Visible then
 if (Message = WM_LBUTTONDBLCLK) then
   Form.Show;
end;


← →
Юрий_К   (2007-11-22 15:50) [2]

И ещё один вопрос. Тот TrayIcon, что в VCL проектах использовал, содержал свойство "PopupMenu", в KOLTrayIcon этого нет. Как PopupMenu привязывать к KOLTrayIcon?


← →
Dimaxx ©   (2007-11-22 15:54) [3]

Ловить в OnMessage нажатие правой кнопки и выводить меню ручками.


← →
Юрий_К   (2007-11-22 16:27) [4]

"Dimaxx ©   (22.11.07 15:54) [3]
Ловить в OnMessage нажатие правой кнопки и выводить меню ручками."

Спасибо за ответ. Вот такое и должно было бы быть в примере про KOLTrayIcon. А то там всего лишь на форму помещена компонента KOLTrayIcon и всего лишь. Ради чего такой пример выставлять, не понятно.


← →
Юрий_К   (2007-11-22 16:45) [5]

Похоже я не то событие вызвал:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);

Нужно было с компоненты KOLForm:
TForm1.MainFormClose(Sender: PObj; var Accept: Boolean)

Правильно ли я мыслю? Чтобы на панели задач не было формы, нужно главное окно невидимым делать, а работать со второй формой, все нужные компоненты там распологать.


← →
Дмитрий К ©   (2007-11-22 16:57) [6]


> Правильно ли я мыслю? Чтобы на панели задач не было формы,
>  нужно главное окно невидимым делать, а работать со второй
> формой, все нужные компоненты там распологать.

Если нету KOLApplet, добавь. Его и прячь. Applet отвечает за кнопку на панели задач.


← →
Юрий_К   (2007-11-22 18:06) [7]

ОК. К чему пришли:
procedure TForm1.MainFormClose(Sender: PObj; var Accept: Boolean);
begin
 if (Applet.Visible) then
 begin
   Accept := False;
   Form.Hide;
   Applet.Hide;
 end;
end;

procedure TForm1.TrayIconMouse(Sender: PObj; Message: Word);
begin
if not Applet.Visible then
if (Message = WM_LBUTTONDBLCLK) then
begin
  Applet.Show;
  Form.Show;
end;
end;


← →
Golem   (2007-11-25 16:21) [8]

Еще вопрос:
при нажатии на кнопку "Х" сворачивается в трей нормально, а вот при нажатии "_" сворачивается в трей и на панель задач выскакивает кнопка проги (первоначально ее не было applet скрыт в onMinimize стоит applet.hide; form.hide;). после разворачивания проги из трея и повторного сворачивания с помощью "_", кнопка с панели задач исчезает и больше не появляется.
Как заставить не появляться кнопку на панели задач после первого сворачивания с помощью "_" ???


← →
Dimaxx ©   (2007-11-25 16:25) [9]

Restore?


← →
Golem   (2007-11-26 22:00) [10]

эээ, не понял...



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.007 c
2-1224766335
Lamer6666
2008-10-23 16:52
2008.11.30
Kak obratit sa k elementu formi po ego imeni?


3-1210660109
Михаил
2008-05-13 10:28
2008.11.30
Диапазон типа DATE у FB2.03


2-1224490297
Mozgan
2008-10-20 12:11
2008.11.30
Перенос компонента из delphi 6 в delphi 7


4-1201114905
Artem
2008-01-23 22:01
2008.11.30
Как заменить иконку?


15-1222319756
Slider007
2008-09-25 09:15
2008.11.30
С днем рождения ! 25 сентября 2008 среда




   Наверх