2010-06-24 1 views
3

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

alt text http://i47.tinypic.com/mrs0o7.jpg

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

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

Спасибо заранее,

Энди

+1

Я думаю, вы должны использовать .NET для этого. Java не подходит для конкретных OS-вещей, подобных этому. – Jonas

+0

Не особенно увлекается этим - если это можно сделать на Java, я хотел бы знать, как это сделать! – RenegadeAndy

ответ

0

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

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

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

1

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

+0

У вас есть идея или пример того, как это сделать? – RenegadeAndy

+0

Вам просто нужно найти соответствующую собственную библиотеку окон для вашей задачи r и перенести ее на Java с помощью JNI/JNA. Я сам не пользователь окна, я не знаю, с чего начать ... –

-1

Вам просто нужно использовать имеющиеся System Tray functionality в Java 6.

Если посмотреть на раздел More Information внизу этой страницы содержит ссылки на API-интерфейс системы и пример проекта.

+0

RegenadyAndy упоминает в своем вопросе, что он знает об этой возможности, но это ему не подходит. Честно говоря, функциональность системного лотка Java - это фрагмент cr * p. У меня было много дел с этим и просто ненавижу - будем надеяться, что Java 7 предложит некоторые улучшения в этой области ... –

+0

Он задавал что-то другое – Xorty

-2

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

 Смежные вопросы

  • Нет связанных вопросов^_^