Текущий архив: 2008.11.30;
Скачать: 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 вся ветка
Текущий архив: 2008.11.30;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.006 c