![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 22.12.2007
Сообщений: 204
|
![]()
во вкладке additional должен быть элемент
SystemTrey но его там нет(использую дельфий 7)можноли его туда каким либо методом добавить??? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
в Delphi 7 его вроде и не должно быть.
Используйте либо RxLib (хотя только ради размещения в трей это глупо) или ручками Для добавления иконки нужно сперва подключить модуль ShellAPI в раздел uses, а затем написать следующий код по нажатию на кнопку: procedure TForm1.Button1Click(Sender: TObject); var no: TNotifyIconData; Hicon1: HIcon; begin //Помещение иконки в Tray Bar HIcon1:=ExtractIcon(Handle,'i:\arw0 1lt.ico',0); with no do begin cbSize:=Sizeof(TNotifyIconData); Wnd:=Handle; uID:=0; UFlags:=NIF_MESSAGE+NIF_ICON+NIF_TI P; SzTip:='Traybar Tip'; HIcon:=HIcon1; //Определяемое пользователем сообщение uCallBackMessage:=WM_USER+0; end; Shell_NotifyIcon(NIM_ADD,@no); end; Для того, чтобы удалить иконку обработайте нажатие второй кнопки: procedure TForm1.Button2Click(Sender: TObject); var no: TNotifyIconData; begin //Удаление иконки with no do begin cbSize:=Sizeof(TNotifyIconData); Wnd:=Handle; uID:=0; end; Shell_NotifyIcon(NIM_Delete,@no); end; Для добавления, удаления или редактирования иконок на TrayBar'e используем специальную API функцию - Shell_NotifyIcon. Как вы уже прочитали для того, чтобы ею воспользоваться, нужно сначала подключить модуль ShellAPI в разделе uses. В качестве параметров функции нужно указать две вещи. Сначала сообщение, которое мы посылаем, определяющее необходимое действие над иконкой. Этот параметр может принимать одно из следующих значений: NIM_ADD - добавляет иконку в область TrayBar'a NIM_DELETE - соответственно, удаляет NIM_MODIFY - если задать это значение, можно будет модифицировать иконку В качестве второго параметра передаётся структура NOTIFYICONDATA, которая содержит сведения об иконке. Эта структура обладает следующими полями: cbSize - это размер структуры в байтах hWnd - дескриптор окна, которое будет получать сообщения ассоциированные с иконкой на TrayBar'e uID - идентификатор иконки на TrayBar'e uFlags - массив флагов, значение этого поля может комбинироваться из следующих констант: NIF_ICON - элемент структуры hIcon будет задействован NIF_MESSAGE - элемент структуры uCallbackMessage будет задействован NIF_TIP - - элемент структуры szTip будет задействован uCallbackMessage - идентификатор сообщения. Система использует этот идентификатор, когда сообщение посылается окну, обозначенному в поле hWnd. Это сообщение посылается, когда происходит событие мыши над областью иконки. hIcon - дескриптор задаваемой иконки szTip - всплывающая подсказка, появляющаяся над областью иконки DW
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
![]() |
#3 |
Участник клуба Подтвердите свой е-майл
Регистрация: 14.12.2007
Сообщений: 1,434
|
![]()
В Делфи такого компонента с роду небыло, это в Visual C++ есть.
Квэнди спасибо за инфу.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
![]() |
![]() |
![]() |
![]() |
#4 |
Новичок
Джуниор
Регистрация: 22.12.2007
Сообщений: 204
|
![]()
цитирую из книги дельфий от фленова !!!но там описывается дельфий 2006 это из книги bibliya Delphi
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
Этот компонент децствительно есть в Delphi >7
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 09.11.2007
Сообщений: 1,762
|
![]()
В Delphi 7 нет компонента работающего с треем! Я исользую RXLib, работает прекрасно. Ни раз не подводила в отличии от Delphi 2006 TTray!
|
![]() |
![]() |
![]() |
#7 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]()
Та такой компонент писать руками часик - чтобы получить довольно хороший результат
![]() |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 27.08.2008
Сообщений: 12
|
![]()
Привет!
Лично я пользуюсь CoolTrayIcon'ом - для моих скромных потребностей весьма хватает. TTray в новой Delphi не видел, характеризовать не буду, но по моему, CoolTrayIcon - очень даже нормальный компонент. |
![]() |
![]() |
![]() |
#9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Пользуюсь Shell_NotifyIcon и больше от компонентов не зависю(шу)
Рекомендую всем и каждому.
I'm learning to live...
|
![]() |
![]() |