Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Вниз

TaskBar + System Tray в Delphi   Найти похожие ветки 

 
Sj ©   (2004-07-03 13:19) [0]

Здраствуйте!У меня есть такой вопрос: как сделать на Делфи TaskBar и Трей?Каким образом отображать иконки которые находятся в трее, и что-бы при нажатии кнопок миши эти иконки вызывали соответствующии менюшки (POPUP)...За ответ буду очень благодарен. :)


 
K.o.Z   (2004-07-03 14:23) [1]

Не понял. Зачем тебе рисовать TaskBar и Tray??
Ты у себя в приложении режил сделать аля-windows??
Так не надо!! Один уже сделал... ;)


 
DVM ©   (2004-07-03 23:45) [2]


> У меня есть такой вопрос: как сделать на Делфи TaskBar и
> Трей

Руками. Между прочим данные 2 термина это одно и то же.
Есть область уведомлений и список задач.

> Каким образом отображать иконки которые находятся в трее

Ну способов куча - хошь рисуй сам, хошь делай как Microsoft из ToolBar, еще из TabControl можно - дело вкуса.

> и что-бы при нажатии кнопок миши эти иконки вызывали соответствующии
> менюшки (POPUP)...

Вопрос настолько объемный, что даже не знаю с какой стороны начать рассказывать, чтобы покороче.
Начни отсюда, что-ли:
http://www.delphikingdom.ru/asp/viewitem.asp?UrlItem=/treasury/systray.htm


> Ты у себя в приложении режил сделать аля-windows??

Скорее а-ля Explorer


 
Sijey ©   (2004-07-04 12:06) [3]

Я не спрашивал какими компонентамы рисовать!!Я спрашивал как витянуть иконки запущеных програм!Наверное через хендлы но как их найти...?Что ли через FindWindow?:(


 
Sur   (2004-07-04 12:29) [4]

Пример:

............

uses
  ShellAPI;

var
 NID: TNotifyIconData;

............

{Добавление}
procedure TForm1.bAddClick(Sender: TObject);
begin
{Установка необходимых значений в поля структуры TNotifyIconData}
WITH NID DO BEGIN
uFlags := NIF_ICON OR NIF_TIP OR NIF_MESSAGE;
cbSize := SizeOf(NID);
uID := 123;
Wnd := Handle;
szTip := "Пример подсказки"+#0;
hIcon := Application.Icon.Handle;
uCallBackMessage := WM_USER+10;
END;
{Добавление иконки в панель задач}
IF Shell_NotifyIcon(NIM_ADD,@NID) THEN MessageBeep(0);
end;

............

{Изменение}
procedure TForm1.bModifyClick(Sender: TObject);
begin
{Установка новых значений в поля структуры TNotifyIconData}
WITH NID DO BEGIN
szTip := "Пример подсказки 1"+#0;
hIcon := LoadIcon(0,IDI_ASTERISK);
END;
{Изменение иконки в панели задач}
IF Shell_NotifyIcon(NIM_MODIFY,@NID) THEN MessageBeep(0);
end;

............

{Удаление иконки из панели задач}
procedure TForm1.bDeleteClick(Sender: TObject);
begin
IF Shell_NotifyIcon(NIM_DELETE,@NID) THEN MessageBeep(0);
end;

............

{Процедура реакции на события передаваемые иконкой}
procedure TForm1.WndProc(var M: TMessage);
var CursorPos: TPoint;
begin
{Проверка на принадлежность сообщения иконке}
IF M.Msg = WM_USER+10 THEN
{Реакция на необходимые события}
CASE M.LParam OF
WM_RBUTTONUP :
BEGIN
GetCursorPos(CursorPos);
PopupMenu1.Popup(CursorPos.X, CursorPos.Y);
END;
WM_LBUTTONDBLCLK :
ShowMessage("Двойной щелчок мыши!");
END;
{Передача необработанных сообщений дальше}
INHERITED WndProc(M);
end;


 
Sasha73 ©   (2004-07-19 16:27) [5]

Удалено модератором
Примечание: Заддай свой вопрос в отдельной ветке


 
DeadMeat ©   (2004-07-19 20:12) [6]


> [4] Sur   (04.07.04 12:29)

Если я правильно понял автора, то это не совсем то... Точнее даже совсем не то...

---
...Death Is Only The Begining...



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

Форум: "WinAPI";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.026 c
1-1092669964
sergch
2004-08-16 19:26
2004.08.29
Как записать с помошью FileWrite текст из переменной?


1-1092653551
Gemini
2004-08-16 14:52
2004.08.29
Переменные в Run-Time


3-1091886312
Koala
2004-08-07 17:45
2004.08.29
Обновить статистику всех индексов


14-1091771704
benito
2004-08-06 09:55
2004.08.29
Реорганизация Потрепаться- молодые и сильные выживут


14-1092289956
Кириешки
2004-08-12 09:52
2004.08.29
Чем отличается CloseProcess от Terminate Process?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский