Кто нить помогите
Программеры. напишите пожалуйста команду как сворачивать в системную трею
Зарание СПАСИБО!!!
Delphi помогите
Автор Painkiller, 29.12.2005, 22:58
#2
Отправлено 30.12.2005, 00:13:38
Для работы с треем есть функция, описанная в юните ShellAPI.pas: Shell_NotifyIcon(dwMessage: Cardinal; IpData: PNotifyIconDataA).
dwMessage: Переменная может принимать 3 значения: NIM_ADD, NIM_MODIFY, NIM_DELETE. При dwMessage = NIM_ADD, иконка добавляется в Tray; при dwMessage = NIM_MODIFY иконка обновляется и при dwMessage = NIM_DELETE удаляется из Tray Bar.
IpData: Это ссылка на переменную типа NOTIFYICONDATAA, которая представляет из себя запись из следующих полей:
cbSize: DWORD;
Wnd: HWND;
uID: UINT;
uFlags: UINT;
uCallbackMessage: UINT;
hIcon: HICON;
szTip: array [0..63] of AnsiChar.
cbSize ? Размер записи. Его надо определить, как SizeOf(NOTIFYICONDATA).
Wnd ? Дескриптор окна, которое будет получать сообщения от иконки в Tray Bar.
uID ? Идентификатор вашей иконки (её номер).
uFlags ? Свойства иконки. Может принимать значение NIF_ICON, NIF_MESSAGE, NIF_TIP (что-то одно: только видна иконка без всплывающей подсказки, обработка сообщений или одна подсказка). А также может быть и (NIF_ICON or NIF_MESSAGE or NIF_TIP), т.е. полноценная Tray иконка, поддерживающая сообщения системы, видимую иконку и подсказку по наведению курсора на неё.
uCallbackMessage ? Сообщение, адресованное окну, выбранному в свойстве Wnd.
hIcon ? Дескриптор иконки, которую надо изобразить в Tray Bar-е.
szTipe ? Текст всплывающей подсказке у иконки.
dwMessage: Переменная может принимать 3 значения: NIM_ADD, NIM_MODIFY, NIM_DELETE. При dwMessage = NIM_ADD, иконка добавляется в Tray; при dwMessage = NIM_MODIFY иконка обновляется и при dwMessage = NIM_DELETE удаляется из Tray Bar.
IpData: Это ссылка на переменную типа NOTIFYICONDATAA, которая представляет из себя запись из следующих полей:
cbSize: DWORD;
Wnd: HWND;
uID: UINT;
uFlags: UINT;
uCallbackMessage: UINT;
hIcon: HICON;
szTip: array [0..63] of AnsiChar.
cbSize ? Размер записи. Его надо определить, как SizeOf(NOTIFYICONDATA).
Wnd ? Дескриптор окна, которое будет получать сообщения от иконки в Tray Bar.
uID ? Идентификатор вашей иконки (её номер).
uFlags ? Свойства иконки. Может принимать значение NIF_ICON, NIF_MESSAGE, NIF_TIP (что-то одно: только видна иконка без всплывающей подсказки, обработка сообщений или одна подсказка). А также может быть и (NIF_ICON or NIF_MESSAGE or NIF_TIP), т.е. полноценная Tray иконка, поддерживающая сообщения системы, видимую иконку и подсказку по наведению курсора на неё.
uCallbackMessage ? Сообщение, адресованное окну, выбранному в свойстве Wnd.
hIcon ? Дескриптор иконки, которую надо изобразить в Tray Bar-е.
szTipe ? Текст всплывающей подсказке у иконки.
uses SysUtils, Windows, ShellAPI; {добавление иконки} function DZAddTrayIcon(const Window: HWND; const IconID: Byte; const Icon: HICON; const Hint: String = ''): Boolean; var NID : NotifyIconData; begin FillChar(NID, SizeOf(NotifyIconData), 0); with NID do begin cbSize := SizeOf(NotifyIconData); Wnd := Window; uID := IconID; if Hint = '' then begin uFlags := NIF_ICON; end{if} else begin uFlags := NIF_ICON or NIF_TIP; StrPCopy(szTip, Hint); end{else}; hIcon := Icon; end{with}; Result := Shell_NotifyIcon(NIM_ADD, @NID); end; {добавляет иконку с call-back сообщением} function DZAddTrayIconMsg(const Window: HWND; const IconID: Byte; const Icon: HICON; const Msg: Cardinal; const Hint: String = ''): Boolean; var NID : NotifyIconData; begin FillChar(NID, SizeOf(NotifyIconData), 0); with NID do begin cbSize := SizeOf(NotifyIconData); Wnd := Window; uID := IconID; if Hint = '' then begin uFlags := NIF_ICON or NIF_MESSAGE; end{if} else begin uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP; StrPCopy(szTip, Hint); end{else}; uCallbackMessage := Msg; hIcon := Icon; end{with}; Result := Shell_NotifyIcon(NIM_ADD, @NID); end; {удаляет иконку} function DZRemoveTrayIcon(const Window: HWND; const IconID: Byte): Boolean; var NID : NotifyIconData; begin FillChar(NID, SizeOf(NotifyIconData), 0); with NID do begin cbSize := SizeOf(NotifyIconData); Wnd := Window; uID := IconID; end{with}; Result := Shell_NotifyIcon(NIM_DELETE, @NID); end;
Сообщение отредактировал egoist: 30.12.2005, 09:45:00
#5
Отправлено 01.01.2006, 11:49:44
Можешь взять тут:
компонент fwtray http://xmagazine.hos...soft/fwtray.zip
или компонент TrayComp http://xmagazine.hos...ft/TrayComp.zip
компонент fwtray http://xmagazine.hos...soft/fwtray.zip
или компонент TrayComp http://xmagazine.hos...ft/TrayComp.zip
#17
Отправлено 10.01.2006, 20:29:39
Скиньте кто нибудь indy servers на мыло alexey_k@mail.kz
#18
Отправлено 16.01.2006, 11:06:45
Как это кинуть? Ты в смысле хочешь с 7-ой версии компоненты использовать в 6-ой? Вряд ли получится Ищи альтернативные компоненты, зайди на http://www.delphimaster.ru, кроме того в сети полно ресурсов с VCl'ом. Вооружись Yandex'ом или Aport'ом, как нравится и ищи.....Скиньте кто нибудь indy servers на мыло alexey_k@mail.kz
Количество пользователей, читающих эту тему: 1
пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0