Перейти к содержанию
Fire Monkey от А до Я

[Windows] TnTRayIcon не визуальный компонент обеспечивающий управление значком в области System Tray


Рекомендуемые сообщения

Опубликовано

 

Nix0N, спасибо за компонент.

Не хватает проверок на наличие событий

    if Assigned(mOnClick)
     then mOnClick(nil);

Спасибо! Я пол часа не мог понять почему вылетает с access violation при частых кликах (на OnClick висело Visible:=Not Visible). Оказалось что срабатывает OnDoubleClick и без проверки на Assigned(mOnDblClick) результат закономерный :-)

Вот правильный код с проверками на оба события:

 

    if LParam = WM_LBUTTONDBLCLK then
      if Assigned(mOnDblClick) then
        mOnDblClick(nil);
    if (Msg = WM_TRAYICON) and (LParam = WM_LBUTTONDOWN) then
      if Assigned(mOnClick) then
        mOnClick(nil);
  • 3 недели спустя...
Опубликовано (изменено)

На XP SP3 при нажатии правой кнопкой на иконке в трее вылетает "Abstract Error". К сожалению нет возможности продебажить под XP. Может кто знает куда копать?

 

UPD:

Валится PopupMenu. Трей не причем. Похоже очередная бага в FMX.

Изменено пользователем DirtyBorov
  • 5 месяцев спустя...
Опубликовано

Переделаный компонет VCL TTrayIcon

Спасибо огромное! В прошлом не хватало OnBalloonClick.

Один вопрос - картинка берется из приложения? Вот свою бы ставить на выбор. И OnAnimate не задействовано никак. Развитие компонента ожидается?

  • 3 месяца спустя...
Опубликовано

Всем доброго времени суток. Нашёл очень жуткий костыль для того чтобы PopupMenu было по верх таскбара.

Необходимо у формы, родителя popupmenu, выставить свойство FormStyle = StayOnTop. Можно popupmenu кинуть и на другую форму, скрыть форму и выставить для неё StayOnTop. Знаю решение ужасное, но рабочее.

P.S. Тема похоже заброшена, но я не обнаружил решение.

  • 3 месяца спустя...
Опубликовано

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

  • 1 год спустя...
Опубликовано

Норм компонент, никаких нареканий.. ибо на безрыбье и это замечательно.

А что контекстное меню оказывается за таскбаром - так СтэйОнТоп решает вопрос.

  • 4 месяца спустя...
Опубликовано (изменено)

а как можно менять иконку?

дописал компонент, вроде работает, если кому надо:

uses
  VCL.Graphics;

....

  protected
    procedure SetIcon(Icon: TIcon);
  public
    property Icon: TIcon read FIcon write SetIcon;

...

procedure TCustomTrayIcon.SetIcon(Icon: TIcon);
begin
  FIcon:=Icon;
  FData.hIcon:=FIcon.Handle;
  Refresh;
end;
 

Изменено пользователем dim
  • 2 месяца спустя...
Опубликовано

Неплохая тема. Всю пока не читал. Но вот что интересует.

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

Само собой, с поддержкой Берлин + Токио.

Спасибо.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...