Добавление вклада в панель задач Windows в Java - похоже на виджеты батареи ноутбука! - PullRequest
3 голосов
/ 24 июня 2010

Я пытаюсь внести свой вклад в панель задач Windows, поэтому, когда я минимизирую свое приложение, оно прикрепляется к панели задач Windows, лучший способ описать это - посмотреть на изображение, которое я нарисовал:

альтернативный текст http://i47.tinypic.com/mrs0o7.jpg

Если кто-нибудь знает, возможно ли это или как это сделать, пожалуйста, дайте мне знать.

Мне хорошо известна возможность добавления значка в системный трей, но это немного отличается.

Заранее спасибо,

Andy

Ответы [ 4 ]

1 голос
/ 24 июня 2010

Вероятно, вам придется использовать JNI или JNA для достижения этой цели - обертывание встроенного API Windows кажется наиболее приемлемой идеей. Однако это значительно уменьшит ценность использования Java - использование JNI / JNA всегда должно рассматриваться как последнее средство ...

0 голосов
/ 26 июня 2010

Не могли бы вы спрятать ваше приложение при сворачивании, а затем добавить для него значок в системный трей, который при нажатии отображает ваше приложение?

0 голосов
/ 25 июня 2010

Посмотрите на SWT.Это определенно будет решение для конкретной платформы, но я предполагаю, что это не проблема для вас.

SWT (начиная с версии 3.6, которая только что получила золото) имеет класс TaskBar и соответствующие классы TaskItem для каждого элемента вTaskBar.Я не думаю, что класс TaskItem будет достаточно мощным, чтобы выполнять то, о чем вы просите, но, посмотрев на источник, вы получите представление о низкоуровневых вызовах Windows, к которым вы можете получить доступ, чтобы сделать это.

SWT-версия для Windows будет иметь низкоуровневый API-интерфейс для конкретной платформы, который поможет вам добраться туда, куда вы хотите.В основном они сделали всю работу JNA / JNI за вас.Я не программист Windows, поэтому не могу дать вам больше подробностей, но, надеюсь, это укажет вам правильное направление.

0 голосов
/ 24 июня 2010

Вам просто нужно использовать функцию System Tray , доступную в Java 6.

Если вы посмотрите на раздел Дополнительная информация внизу этой страницы, он содержит ссылки на API-интерфейс System Tray и пример проекта.

...